2024-08-29 Animation & Rigging module meeting

The meeting was on Thursday 2024-08-29T16:00:00Z. It is open for everybody interested to join the video call (link below).

People present are referred to by first name for brevity. Others are referred to by full name.

Present: David W, Draven, Luciano Muñoz, Nate Rupsis, Christoph Lendenfeld, Nathan Vegdahl, Sybren Stüvel

Links

Since the Last Meeting / Announcements

Landed

Names are from the Git log. This list is limited to functional improvements & bugfixes.

Blender

Ongoing Work

  • High Prio bugs:
    • None!
  • Christoph:
    • Christoph’s weekly report
    • Prototype for working with layered actions in the outliner #126839: WIP: Anim: Drag and drop for actions in the outliner
    • #126937: Layered Action - Join Animation / Move Slot
    • #126655: Anim: Create layered action once for data and action possibly not the best solution
      • Sybren: let’s have a general rule for embedded IDs, and on top of that special cases for shapekeys & for keeping object+data together.
      • Sybren: maybe also look at a rule for naming the Action. Especially for embedded IDs, it shouldn’t matter which you key first (the main ID or the embedded one, e.g. the Material or its Shader Node Tree).
      • Nathan: Questions about embedded IDs:
        • They have a name, right? Because they’re not in bpy.data.{whatever}, those names are probably not unique.
        • Sybren checks: indeed they are not uniquely named.
        • Nathan: we have to be aware of this when creating the slots for them.
        • Sybren: let’s push further with the treatment of embedded IDs as special, and name their slots after the main ID they are contained in.
        • Module agrees.
    • Bugfixes for layered actions
  • Nathan:
    • Nathan’s weekly report
    • Worked a little bit more on strip data storage.
    • Mostly worked on addressing review comments from Sybren on the landed Channel Groups PR.
    • Next is tracking down the key selection bug in layered-action channel groups, followed by continuing work on strip data storage.
  • Sybren:
  • Animator meeting at Blender HQ, with Rik Schutte and Pablo Fournier:
    • Went over slotted Actions and what still needs doing.

Autokey UI indicators

  • PR: #126344: UI: Multicolor Autokeying Indicator
  • Landed in 4.3-alpha (aa78d43a056f).
  • Colour is themeable (where/how is described in the PR)
  • Discussion about what to do with the autokeying indicator in the 3D Viewport.
    • Remove completely?
    • Show same ‘red dot’ indicator in the same line that shows the changing numbers?
    • Big red outline around the entire 3D Viewport?
    • Other options?
  • Nathan: how common is it for people to frequently toggle autokeying on/off? If people generally keep it one way, it’s not that important to make it big & flashy. In which situations do people want this setting to be prominent?
  • Sybren: this could be a nice experiment for an add-on.
    • Use the ‘Autokey: enable in new scenes’ preference to set autokeying on/off on file load.
    • Christoph tests, a new file doesn’t count as a “new scene” for this.
    • Sybren: The add-on could show a big warning where the current setting is different from that preference. And it could be set on load of a blend file.
  • Nathan: should this even be saved to the blend file?
  • Christoph: we need ‘persistent settings’ in the editors, and not just in the user preferences. “Autokeying on/off” is just another example that should be remembered, and not stored in the scene.
  • Nathan: it also depends on which stage of a shot you’re in as an animator, when you want to have autokeying on in one stage, and off in the other.
  • Luciano: usually you (as an animator) choose to use autokeying all the time, or you don’t use it at all. Same for the autokeying options; it’s more about “how I work” and not so much “this is what I’m doing now”.
  • David: I use autokey for IK, but not for FK, but I am mostly mostly mocap based and very unique animation process
  • Nathan: Autokey enabled + Only Insert Available for life
  • Sybren will make an add-on to experiment with this, and put it on the extensions website.

Patches: Review & Decision Time

Looch Asks Stuff

  • Luciano: Child Of constraint, can we make it ignore all the preceeding constraints?
    • Sybren: we might be able to add an option of that constraint that ignores the ‘incoming’ matrix.
    • Nathan: that might be hard to use, because it would also ignore the constrained object/bone’s own transform in its parent space.
    • Luciano: how does the Blender Studio do parent switching, since they don’t use the “Child Of” constraint?
    • Nathan: by taking this into account in the rig. They add an extra bone that has one or more Copy Transform constraints that can then point to the new parents. The child of this extra bone is then switchable between different parents.
  • Luciano: the X button to remove the influence of the constraint, can we make that a two-way arrow to toggle it on/off? It’s now impossible to turn on the constraint without moving.
    • Sybren: it’s a tricky thing to solve. My fork of the Copy Global Transform add-on tries to solve this generally. It works in relatively simple cases, but can also fail hard. The problem is that many constraints cannot be reversed, or only partially so. And also for some constraints you need to change the bone’s position to make it end up at the right place, whereas for other constraints you need to change constraint-specific data. Much harder problem to solve.

Next Meeting

The next meeting will be on Thursday 2024-09-05T16:00:00Z. Again it will be open for everybody who’s interested. The provisionary meeting agenda will be updated before the meeting.

4 Likes

Speaking for myself: very often. Depends on what I am animating (character vs environment, for example.)

And having a rather visual notification of this saves countless moments of “damn, I was in the wrong mode and didn’t realize this. Revert or redo a lot of things now.”

I don’t necessarily want a huge red frame around the scene, but the RED record button is nice, and a viewport label (ala point/face count, but perhaps in a different corner) would be welcome.

3 Likes

I want to add,
Upon further investigation and contrary to what was suggested in the meeting, a transform constrain does override every constrain below it differently to the child of constrain.
Though the transform constraint does not have a offset option that the child of constraint has which allows (or should just allow) to keep the current relationship between the constrained objects intact, not consider the underlying transforms at every corner, just the current relationship at the at the creation of the constraint.

1 Like

Keying sets are great but I wish that there was a way to toggle autokeying per channel in the UI temporarily which would key the enabled channels when autokey is enabled.

1 Like