The meeting will be on 2024-05-14T10:00:00Z. It is open for everybody interested to join the video call (link below).
Present: Christoph Lendenfeld, Hjalti Hjálmarsson, Ivan Cappiello, MohammadHossein Jamshidi, Nacho de Andrés, Nathan Vegdahl, Pablo Fournier, Rik Schutte, Sybren Stüvel
People present are referred to by first name for brevity. Others are referred to by full name.
Links
- Video Call. Note that there are no recordings of the meeting. This way everybody is free to say or show anything.
- A&R Module Meetings calendar for inclusion in your own calendar
- Previous & next meeting notes
- Issues & Pull Requests
- #animation-module chat channel
- Draft agenda for any upcoming meetings
Since the Last Meeting / Announcements
- Discussion about internationalisation & translation of plurals. TL;DR: just write
"%d F-Curve(s)"
or"%d vertex(-ices)"
and avoid having multiple branches for singular & plural. The most important reason is that “singular vs. plural” is only valid in specific languages, and others handle this differently, making things cumbersome to translate / localise. - #90184: Add Asset Browser to Animation Workspace? concluded with “no”.
Landed
Names are from the Git log. This list is limited to functional improvements & bugfixes.
Blender
- 424032b5e58: Grease Pencil: Fix Python error when built without experimental features (Sybren A. Stüvel) (2024-05-03)
- afe13175da0: Anim: run bezier handle calculation in parallel (Christoph Lendenfeld) (2024-05-07)
- 8dbd167e802: Anim: add failure propagation to more lower-level keying functions (Nathan Vegdahl) (2024-05-07)
- b56daddda66: Anim: restore logging of key insertion errors on stdout (Sybren A. Stüvel) (2024-05-07)
- b57916463c4b: Fix #121121: NLA push down places local tracks before library overrides (Philipp Oeser) (2024-05-07)
- 734a9dec430a: Fix #121463: Graph Editor Keyframe jump operator shifts keyframes (Philipp Oeser) (2024-05-07)
- 238ee9683a44: Fix: memleak in Graph Editor Keyframe jump operator (Philipp Oeser) (2024-05-07)
- 71157c998a4d: Fix #121257: Only insert available not working for VSE transform (Pratik Borhade) (2024-05-09)
- b7e93982a7a: Fix: Crash on pose propagate with FCurves that are sampled (Christoph Lendenfeld) (2024-05-10)
- eee32726c74: Fix #121349: Baking adds keys on custom properties that are non-keyable (Christoph Lendenfeld) (2024-05-10)
- 6212c3c3740: Fix #121161: Regression: Frame Selected Includes Hidden Bones (Sybren A. Stüvel) (2024-05-13)
- d94a56bdadf: Anim: merge Animation data-block into bAction (Sybren A. Stüvel) (2024-05-13)
Ongoing Work
- High Prio bugs:
#121161: Regression: Frame Selected Includes Hidden Bones(fixed)#117111: Matrix equality on bones do not match with python FK / IK Snaping script(closed due to using ‘illegal’ code + inactivity when asked to provide another example)
- Christoph:
- Nathan:
- Nathan’s weekly report
- Updating the Baklava 3D viewport keyframing PR to work on top of #121357 which landed yesterday. Will continue with button keyframing after that lands.
- In the bits of time available, working on a technical document with a high-level overview of Blender’s current keyframing code, and ideas for improving it. Very WIP. Note: this is purely about code architecture, not functional changes or features.
- Sybren:
- Animator meeting at Blender HQ, with Rik:
- Rik: it’s annoying that bones default to quaternion rotation, and that there’s no option to change that default.
- Nathan:
- It’s historical. Back in the day all objects were euler and all bones were quat, and neither could be changed at all. When the option to change rotation modes was added in Blender 2.5, the defaults were still left as-is. We should definitely finally update this, but it’s not high priority.
- IMO ideally bones and objects should have the same default, with a single user preference to change it for both.
- Sybren: changing defaults could impact addons/scripts that use the add bone/object operators. Really, they should be using the Python API functions rather than operators, but it’s still something we need to keep in mind.
- Sybren: One of my long-term wishes is also to make the bone axes configurable, so the length-wise axis can e.g. be Z instead of Y.
UX Quirk(s) in the Pose Library Shelf
- Hjalti: mirroring poses requires first clicking-and-holding and then press ctrl. Pressing and holding ctrl first doesn’t work, which is weird.
- Nacho: I think the ctrl thing is just a bug, because it worked to hold ctrl first in previous versions.
- Hjalti: also, right-click menu is missing “blend pose flipped”.
- Nacho: the blend pose operator already has a parameter for applying flipped, so we can just expose that.
- Christoph: we should be able to add “Blend Pose Flipped” to the right-click menu pretty easily. Maybe even for 4.2.
- Hjalti: Is holding ctrl the right interaction model for flipped posing? What is the “Blender” way?
- Christoph: in sculpt mode ctrl is used to invert the behavior of brushes, so there’s precedence.
- Hjalti: the pose library used to have a “flip poses” check box, and I’d like that back. It also flipped the images, which made it easy to see what you were going to do. Moreover, the checkbox isn’t mutually exclusive with the ctrl modifier: we can have both.
- Rik: would also like the check box back. When animating I want a workbench that works for me, rather than a “slick” UI that looks good.
- Sybren: I would love to spend some time, after Baklava Phase 1 is done, to polish the pose library.
- Sybren: The way Jason Schleifer works with the pose library is to have every pose asset be for both sides at the same time. So all hand poses are for both hands. Then he just uses bone selection to determine which hand gets posed. No flipping necessary.
- Hjalti: that makes a lot of sense for certain cases (hands) but not others (flipping asymmetric poses). It also requires building the whole pose library that way, so if the user doesn’t control the pose library they’re at the mercy of the way the pose library was constructed.
- Christoph: these are basically two different use cases, right? Apply a one-sided pose to other side (e.g. a hand pose) vs apply an asymmetric pose flipped (e.g. a facial expression). What if for the first case we just identify that it’s only set for one side or the other automatically, and apply it based on selection?
- Nacho: sometimes I want to select both hands and go back-and-forth between adjusting the pose of one or the other via flipping. Neither Jason Schleifer’s workflow nor auto-flipping based on selection work for that.
- Sybren: related but orthogonal topic: currently the code for creating and updating poses is a default-enabled Blender add-on. It’s an add-on so that TDs can disable it and replace it with custom behavior. I don’t think this is used much though, so here’s an idea:
- Move the pose library from an add-on to Blender itself, and add hooks in there so add-ons can alter its behaviour. That should keep the customisability while also improving integration with Blender.
- Sybren: what I think the pose library needs:
- This move to Blender itself
- Flipping UI/UX improvement
- Pose Creation & Pose Update improvements (writing to other blend files)
- and later animation snippet support.
- Nathan: maybe make a design task for pose flipping UX and pose creation/updating. There may be some interaction between the two in terms of fitting well together, so that should be part of the task.
Next Meeting
The next meeting will be on Thursday 2024-05-23T16:00:00Z. Again it will be open for everybody who’s interested. The provisionary meeting agenda will be updated before the meeting.