GSoC 2019: Outliner Improvements Ideas

A follow up regarding moving around modifiers. If you manage to get it to work, it would be even more awesome if you could make it so you can use copy, cut, and duplicate on modifiers that you can then transfer over to other objects that can use those modifiers, as well as moving them to other objects by dragging.

Also would be nice having the option to delete the entire stack of modifiers through the R click menu for the Modifiers group or using the basic shortcuts for it.


that is Max way and the right way to manage your modifiers. You have a mirror and subdivision modifiers applied to lets say a panel, then you model a bolt as a separate object and you position it into a hole on the half of the panel. You would then copy the panel modifiers and paste it to the bolt. It will automatically mirror that bold to the other panel perfectly in that hole.

That shouldn’t be that difficult. We already support reordering of collections. There is a chance the same code framework can be re-used.


Actually let me rephrase it: This would indeed be neat. Hopefully the current codebase allow this without much effort. It was too irresponsible of me to blindly claim this is easy/hard before giving it a go first :wink:

1 Like

Another issue that came up in, is the fact that it’s currently quite hard to add unlinked Collections into the scene.

If you created Collections by adding them to objects in Properties > Object > Collections, they won’t be added to the scene.

If you could right-click in the Outliner and pick ‘Link Collections’, which would spawn a list of unlinked Collections, that would at least make it much easier to do so.

1 Like

A guy has posted very great idea, 2.8 Outliner feature request

1 Like

One thing that has bothered me time and again is a missing synchronisation between visible and renderable objects.
Meaning I am working on a scene with many collection and many objects, I turn objects on and off, I have it set up the way I want, maybe do a quick check with viewport rendering. And then hit F12 for the high-res final render, and only notice afterwards that some objects were not rendered, or others that I had hidden were still rendered. So then I run through the outliner and visually try to locate the objects that have renderability toggles differently set than their visibility toggles and set them the same.
This problem has been worsened by the fact that the renderability toggles are not shown with the default 2.8 settings. I can imagine new users having a problem with this, not finding why some things render and some don’t.
Maybe there could be a “render visible” button, which would turn the renderability equal to the visibility.
I do not know however how this would deal with helper geomery that you never want rendered.


There is such a button. The check mark, to the left of each Collection.

Ah yes, the checkmark does exactly this. But it’s not available at the object level, which is exactly the problem.

1 Like

Shouldn’t they be linked by default when creating them from the object panel in properties ?


I’m late to the party, but found out that the Scene view of the outliner doesn’t have the object filter like in the Collection view. I prefer the Scene view to hierachy simplicity and still gives me the power of collection visibility - just without all the ghosting and multi collection instancing which can get confusing quickly.

Having even more minimism would be great in the scene view via the filters typical of the collections - also… UI consistency.


1 Like

Another suggestion is like in the View outliner mode, in the Scene mode you should also inverse the highlight so when you select one object, it will highlight the collection it is in.


Hey Nate!

Can you add a right click option to move objects or children one relation layer up?

This would be unique from current parenting options because it doesnt harm origin or local coordinate data, it just changes the parent. Blenders ctrl-P “object” and “keep transform” change the origin and “without inverse” resets the local coordinates. The current Outliner drag and drop has the same issue so I have to manually correct it in the 3D View.

This is also something that could fit within a delete or cut option, like:
“Delete object from the outliner and parent its children one relation higher instead of throwing them out of context somewhere in the scene.”


Such request been posted on RCS long time ago


That doesn’t look like the same thing. I think he’s wanting the outliner to automatically scroll when dragging an object to parent it or drop it in a new collection. If you have a really long scene graph, you have to use the scroll wheel while still holding the left mouse button. The proposal you’re linking to, is a request to have the outliner automatically frame selected in the outliner when you select in the 3D view (or #D view as he called it).

I’m currently working on implementing this.

1 Like

You are my unsung hero!

I got the constraint icons to work. It turns out that each constraint tse stored the constraint in te->directdata so I was able to find a solution that worked the same for both bones and objects. Thanks for writing the switch :wink:


Before spending too much time on this, you might want to get the design for it approved. We currently already have 3 different ways to highlight something in the outliner with a specific meaning (active, selected in outliner, selected in viewport).

Highlighting the collection selected objects are in can make things more confusing if it’s not clearly distinct from e.g. the active collection. Or if you are proposing to automatically make the collection that the active object is in active as well, then it’s also unclear if that will work well.

:smiley: Good to hear! Sorry for the action icon, I didn’t think about it… Maybe it could simply be marked as “modifier” in UI_icons.h, without duplicating it; I think @brecht made it so that icons so marked are used in their coloured version only in the outliner.