Will the dependancy graph improvements help make the UI better?

As much as I love blender, I hate it SO MUCH whenever I have to work with many objects at once.

If I have 100 bones in a chain and want to turn off deform, I must manually click deform off for each and every bone.

If I want to select 100 objects in the outliner and turn off visibility, I have to click the eye icon for each and every one.

If I want to apply a modifier to 20 obejcts, there is a hacky little menu that lets me copy the modifiers of the active object to the selected objects, but that’s not exactly an elegant solution.

If I have 10 objects selected and hit the tab key, only the active object is editable, not all the objects at once like I want.

I can think of many more examples, but in a nutshell, if an entire selection of objects shares a common setting and I edit that setting, I would expect that setting to be changed on all the objects at once. Or if I add a modifier or material with 50 objects selected, I would expect that modifier or material to be applied to the whole selection, not just the active object.

The outliner is practically useless due to it’s inability to multi-select (box select doesn’t count as it doesn’t actually select anything, and the right-click menu doesn’t appear to do anything either). It has such amazing potential for scene management but as of now it’s not good for much of anything.

I don’t really know what it is about Blender’s underlying architecture that prevents this from happening, but I was wondering if the dependency graph project might allow blender to have functionality like this. The speed-ups in workflow on large scenes would be simply amazing if blender worked this way.

Probably not.

All those examples are trivial in python… not a mainstream solution I agree, but in all Dcc tools a power user will script…
And you can do it right now.

Multi selection editing and an improved outliner are indeed highly desirable but more likely it’s a dev time issue/ design
Issue.

Ton has recently been doing a whole bunch of fixes for long standing ui gripes… now that mango is out the way

@UP. Agree. I never thought about that particular improvement from the depgraph project, but that would be awesome.
There are also so many other reasons that the depgraph redesign is going to be great!

Forgive my ignorance but what exactly is dependancy graph? I’ve heard about it and I know it will be a milestone in Blender’s development but what does it actually involve?

On the bright side, however, you can:

  • multi-select objects and Object -> Apply -> Rotation, Location, Scale, and
  • multi-select in Edit Mode (Vertex, Edge or Face) and perform a Median Transform.

I know; you likely don’t want to hear the bright side right now. I feel your pain. :slight_smile:

Agreed - it’s become the Achilles’ heel in Blender, as far as I am concerned: even something as simple as multiple-selecting a bunch of objects, and changing the viewport view settings to wireframe, only affects the last one selected. A bit silly at this point - such basic functionality if you really think about it. The outliner’s potential is marred because of this, the layer system, and so on. (Custom coloured wires on a per object and/or layer basis would be nice too, but that is another discussion.) It’s also holding back and slowing down character animation, and so on.

I have been waiting a long time now for that depsgraph update. Of course, simple python scripts can perform the same thing (I have written some simple ones to take care of some of this), but this type of functionality should in principle be part of the base app (at least, any other application I’ve worked with, 2d, 3d, etc adheres to the op’s and my suggestions). And yes, workflow speed would be much improved - just check out the outliner in C4D.

The current depsgraph system is holding Blender’s maturing back - luckily Ton and devs are acutely aware of this, and hopefully we will see it modernized within a year (although the depsgraph project was originally planned to be completed by v2.5x, I believe?)

I don’t know about the others but Campbell mentioned this one as being a missed 2.5 target they should go back and do in the last Blender Podcast (around 23-24 minute mark).

I think Blender could really use a year or so to just polish existing features and workflows to make them more comfortable to use. As Michael W mentioned, Ton has been looking into quite a few improvements a long the lines of asset management and things.

didn’t campbell in a podcast also mention the issue of multiple edit mesh, and it was now possible with bmesh? I remember him saying it was something he wanted to code for bmesh.

if an entire selection of objects shares a common setting and I edit that setting, I would expect that setting to be changed on all the objects at once.

It’s a reasonable feature request, but it is complicated by the fact that the UI widgets are directly tied to RNA properties. As far as the python API goes, I don’t see a way get a widget without defining such a property somewhere and since an arbitrary amount of these properties would have to be created dynamically, it would be an ugly workaround.
This isn’t really a limitation of the dependency graph, though. The dependency graph is responsible for changes to propagate to everything that depends on the changed data, preferably non-blocking and avoiding redundant calculations. If anything, it might make the UI more responsive.

  1. you can select the bones and press Shift+W , it’s a bit hacky ,but it works.

2)Select what you want to hide with box-select ->then press RMB ->toggle visibilty (or something else)

3)You can, you need to boxselect first,then RMB and “select”,
this will select all that is highlighted.

You can even enter in rename mode for a whole bunch of entries like this (not as powerful as I want it,but at least it’s possible)

It’s not as intuitive as it could be,but at least this is there already.

I agree totally on everything else you mention (+everything should be more intuitive)

Someone else can explain this more precisely, but in short: Blender is not very good at keeping tabs on when a property is edited what else should be updated because of that. If you move a bone it moves another bone but coupled with, drivers, materials, modifiers etc. it becomes a very complex graph of the hierarchic graph of what depends on what. And you can get into a loop problem where objects keep updating each other without end.
This is basically what the dependency graph controls.

I’m also a bit confused about which benefits will bring. I read few days ago these wiki pages from the devs to cast some lights, though they’re in “heavy developer dictionary” so not an easy read for non english people / non-devs people.

Ton depsgraph

Brecht depsgraph

Aligorith depsgraph

For the examples provided, turning off visibility or the deform properties of bones, one just needs to select all the objects / bones, change the value, right click the box / eye icon and choose “Copy to Selected” from the menu there.

Ctrl + L can be used to link material properties and such and such.

This doesn’t work for everything, but in these particular case, will work as required.

I think something must be broken in build (r53517) as I dont have a working right click menu in outliner. Just some kind of python menu pops up after a box select and right click. Can anyone confirm?

53529 seems to work fine. Maybe reload factory defaults and make sure it’s not some config setting that screwed up?

I’m getting the right click menu to show up, but it’s a bit inconsistent. It’s hard for me to pinpoint when it will and won’t appear. I’ll keep testing. Thanks for the suggestions everyone! The outliner right-click menu and shift-w on bones are a big help. It’s still all very hacky and not consistent, but it’s helping me get my work done faster, so thank you all.

Speaking of inconsistency, the right click menu in Outliner only seems to work with objects only? Bones don’t seem to work at all with that menu.

Also, is there any known way to select a hierarchy? Like, select the parent null of a complex hierarchy and then have blender select everything below it?

So one more question - will development of depsgraph improve e.g. viewport speed during animation playback? Or new, better layer menager (aka outliner)?

Yes, to both of those. As updates are calculated more efficiently there will be substantially less overhead for viewport display.

Agreed. +Nodeview of the scene and objects :slight_smile: