The meeting will be on 2024-12-12T17: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: Brad Clark, Christoph Lendenfeld, David Woolf, Julian Schmoll, Nacho de Andrés, Nathan Vegdahl, Sybren Stüvel
Links
- Video Call
- A&R Module Meetings calendar for inclusion in your own calendar app
- Previous & next meeting notes
- Issues & Pull Requests
- #module-animation chat channel
- Draft agenda for any upcoming meetings
Opening
- Please raise your hand when you don’t understand things for any reason. The purpose of these meetings is collaboration. It is absolutely fine to ask for explanations.
- There are no recordings of the meeting. This way everybody is free to say or show anything they want.
Since the Last Meeting / Announcements
- Blender 4.3.1 has been released.
- All working on #130921: Anim & Rig: Quality Project (Dec '24 / Jan '25)
Landed
Names are from the Git log. This list is limited to functional improvements & bugfixes.
Blender
- 0ce1aa9ecd5: Fix #131198: Add missing redraw for ND_KEYFRAME_PROP (Christoph Lendenfeld)
- ff0a2d6dbf8: Anim: set default ‘last slot handle’ when versioning legacy Actions (Sybren A. Stüvel)
- e909a17554b: Anim: when creating action slot by keying, name it after last-used slot (Sybren A. Stüvel)
- bf9eb575549: Anim: Fix bug in Action Slot auto-assignment code (Sybren A. Stüvel)
- 454677ad49b: Fix: use
unspecified
idroot when duplicating Action from Action Editor (Nathan Vegdahl) - 7e1db7de194: Fix #129416: Wrong Bone Selection Set used for selection (Christoph Lendenfeld)
Ongoing Work
- High Prio bugs:
- #131305: Regression playing animation after BVH import in 4.4x (Sybren working on way to make this work in general, better Python API backward compatibility)
- Christoph:
- Christoph’s weekly report
- continue work on the Pose Library prototype, Pose Assets with slots are “working” #130987: WIP: pose library updates prototype
- Trying to get multi-slot pose assets to work.
- Creating & applying is easy, blending is hard.
- Will first work on general single-slotted Actions as poses, so that the current functionality works.
- Multi-slotted Pose Assets are also possible, but for a later pull request.
- bugfixes
- Nathan:
- Nathan’s weekly report
- Working on bug fixes.
- Did some lovely archeology into why a pre-2.5 Blender file wouldn’t read properly in 4.4 with slotted Actions (#131679).
- Sybren:
- Sybren’s weekly report
- Worked on fix for #130136: “Purge Unused Data” causing a crash when saving file
- Lots of work on versioning legacy Actions to slotted Actions.
- Animator meeting at Blender HQ, with Rik Schutte, Hjalti Hjálmarsson, and Pablo Fournier:
- Hjalti, and Rik also to some extent, would prefer it that animators could ignore action slots when you don’t want to use their power.
- Nathan paraphrases it as: Blender should be more aggressive when auto-assigning slots.
- Sybren: there are cases where this causes issues, because Blender doesn’t know why you assign the Action:
- Cube is animated by
CubeAction
- Suzanne should be animated by the same Action
- Animator assigns
CubeAction
to Suzanne - If Blender now auto-selects a slot, it would move Suzanne to Cube’s animated position.
- There is now no way to get Suzanne back to where she was, without also un-assigning the Action.
- Cube is animated by
- Rik: Suggested making the “always auto-assign slot” behaviour optional in the preferences. That way you can work without ever knowing about slots.
- Christoph: does this come from experience working with the system? Because if you don’t want to work with slots you likely won’t assign Actions either and just start keying.
- The confusing/annoying situation:
- Hjalti animated
Cube.512
- He now wants to add some offset to the cube.
- He creates an Empty, unassigns the Action from the Cube and assigns it to the Empty.
- The Empty doesn’t animate, because the ‘Cube’ slot isn’t auto-assigned.
- This is now a bit frustrating (assigning the right slot takes an extra action, potentially searching in a list of slots), and could be confusing to new users who don’t know about slots.
- Hjalti animated
- Sybren: multiple things build up the confusion here, and they might need different solutions:
- The Slot selector collapses when there is no slot selected, so it doesn’t show a big black hole of nothingness to indicate this state.
- Blender doesn’t warn you that you assigned an Action, with one slot, but that the slot is not assigned. So it doesn’t guide you to some form of understanding.
- Nathan: we don’t need to solve this problem in the way they ask us to; my concern is that if we did, and the more we cater to the “let’s ignore slots” cases, we make the “using slots” workflows significantly harder. As in, there’s a tention between “simplicity” and “using slots pleasantly”.
- Brad: This sounds like we should solve things more with tooling, rather than trying to get Blender to behave perfectly for all situations (because we can’t). Transferring animation should be fairly straight-forward.
- Christoph: we could be leaning more towards auto-selecting. But also likes Brad’s suggestion.
- Christoph: as an artist, I would not use the Action selectors, but rather key both Cube & Suzanne, and then merge the Actions together.
- Sybren: still I would want to offer the Action selectors as fine-grained control over what is animating what.
- Sybren: we could have a button (with an icon of dice?, to clarify this is a “I’m taking a gamble” kind of button), which could make Blender auto-select a slot in a much more aggressive way. It could select the one slot that has no user yet, or the one for which the Levenshtein distance between the slot & object name is smallest, etc. This would be a separate click, but therefore also be a conscious choice of the animator to use. And it would be undo’able.
- People agree this would be nice.
- Nathan: the further we are with slotted Actions, the more I’m leaning this way: it’s important to have a way for users to not have a slot get auto-selected. I’m not against auto-selecting slots, but there should always be a way to select an Action and not have a slot auto-selected. This is really really stupid and simple and predictable. The ‘smarter’ Blender is, the less predictable. An explicit ‘auto-select’ button would be really nice.
- Nathan’s proposal: currently the “last-used slot name” is auto-selected. Nathan and Sybren have been dreaming of showing that last-used slot name, greyed-out, when no slot is selected. Pressing the ‘X’ button then also clears that field, and would then prevent slot auto-selection. That, combined with a nice ‘roll the dice’ button, could cover a lot of use cases. Many heads nodding in agreement.
- Nathan: this makes the slot selector look like it’s always selecting a slot, even when no Action is assigned. Christoph: much like.
- Brad: that sounds like a mix between “auto-complete” predicting things, plus a “clear history” to avoid this.
Brad: Pasting poses over overrides was reported (#128519) & fixed, but the fix is only half-fixing the issue.
- The final fix: #131748: Regression: Still getting error with pasting pose on liboverride armature ‘removing all override data’
- Could use some testing.
- Brad: is a bug in the 4.2-LTS release too, so this should get backported.
- Christoph: will check with Bastien whether it’s safe to put this on the to-be-backported list.
- Update after the meeting: there will be a 4.3.2, but only for “very severe issues (regressions introduced in 4.3.1, data corruption or severe crashes).”
Patches: Review & Decision Time
- #131477: Child Of constraint shows relationship line to origin with no target
- Sybren: shall we just not draw that line?
- Christoph: let’s not. He talked with people at BConf24, and they disabled relationship lines because they got annoying. So less drawing of useless lines is good. Everybody agrees.
- Nathan: they’re called “relationship lines”, they shouldn’t be drawn when there is no relationship.
- Nacho: let’s change them to “it’s complicated”.
- Decision: not draw them until we know it’s the right line.
Next Meeting
The next meeting will be on Thursday 2024-12-17T17:00:00Z. Again it will be open for everybody who’s interested. The provisionary meeting agenda will be updated before the meeting.