Page MenuHome

Dope Sheet: Nested action groups
AbandonedPublic

Authored by Clinton Mo (MiniEval_) on Aug 27 2021, 5:43 AM.

Details

Summary

Action groups can be assigned a "parent" action group from the same action.
This can be used to organise dope sheets and action editors in a hierarchical manner. Modifications to the dope sheet filter and draw functions for displaying group hierarchies are included in this patch.

Action group parents cannot be set in a manner that causes the group hierarchy to become cyclic. This is enforced in the setter operator.

Diff Detail

Repository
rB Blender

Event Timeline

Clinton Mo (MiniEval_) requested review of this revision.Aug 27 2021, 5:43 AM
Clinton Mo (MiniEval_) created this revision.

A couple of questions from a user standpoint
Is it possible to create hierarchical action groups in this fashion automatically on keying based on Bone Groups?
Would it be a good change to make Location / Rotation / Scale sub-groups under transform for objects, and the bone name for bones? That could get rid of the variability of group names in objects depending on what got keyed first.

A couple of questions from a user standpoint
Is it possible to create hierarchical action groups in this fashion automatically on keying based on Bone Groups?
Would it be a good change to make Location / Rotation / Scale sub-groups under transform for objects, and the bone name for bones? That could get rid of the variability of group names in objects depending on what got keyed first.

Syncing between bone groups and action groups is possible, though somewhat cumbersome if done automatically. I would put it outside the scope of this diff.

Nesting action groups can certainly enable subgroups for transforms, though I would like some opinions on whether such a change is more beneficial or detrimental first.

This patch has been discussed in yesterday's Animation & Rigging module meeting. In short, it was concluded that Blender is not ready (yet) for the functionality of this patch. There are many fragile areas in Blender's code, for example places where there are assumptions that the group names are equal to bone names. This assumption currently already breaks in certain cases, and can cause hard to track down bugs. Then there are weaknesses in the code that determines where new FCurves are placed; this will only become a harder problem to solve when group nesting is possible.

Please come join us in the #animation-module channel on Blender Chat. There you can discuss ideas, and get a feeling for how desirable your ideas are to the rest of the module. That way it's much easier to write code that'll actually get accepted. Alternatively, pick a TODO task from https://developer.blender.org/project/board/5/?order=priority. The Short Term Tasks column shows the ones we'd love to see addressed sooner than later. The TODOs column may also have something you'd like to work on; those are all already-approved tasks, so getting a patch in will be much easier.

Since there hasn't been any update to this patch since the last time it was discussed at a module meeting a year ago, I'm closing the patch.