_The meeting will be on [date=2026-02-05 time=18:00:00 timezone="Europe/Amsterdam"]. 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: Christoph Sybren Felipe Jeremy Nathan Loofbourrow Natcho John Swenson Demeter ## Links - **[Video Call][videocall]** - [A&R Module Meetings calendar][calendar] for inclusion in your own calendar app - [Previous][prev] & [next][next] meeting notes - [Long Term Plans][longterm] & [Current Focus][current] - [Issues][issues] & [Pull Requests][PRs] - [#module-animation][chat] chat channel - [Draft agenda][draft] for any upcoming meetings [prev]: https://devtalk.blender.org/t/2026-01-27-animation-rigging-module-meeting/44164 [next]: https://hackmd.io/@anim-rigging/rkRuV4Nc3 [videocall]: https://meet.google.com/otb-wyte-xec [calendar]: https://stuvel.eu/anim-meetings/ [draft]: https://hackmd.io/@anim-rigging/rkRuV4Nc3 [issues]: https://projects.blender.org/blender/blender/issues?state=open&labels=268 [PRs]: https://projects.blender.org/blender/blender/pulls?state=open&labels=268 [chat]: https://chat.blender.org/#/room/#module-animation:blender.org [longterm]: https://developer.blender.org/docs/features/animation/module/bigger_projects/ [current]: https://projects.blender.org/blender/blender/projects/1 ## 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 5.1 beta got delayed by a few days, due to pending library updates. It should have branched yesterday, but might happen today or tomorrow. - Winter of Quality is over. Our work is tracked in [#150572](https://projects.blender.org/blender/blender/issues/150572). - CodiMD (basically Open-Source-features-only version of HackMD) now running on https://notes.blender.org/. - Doesn't appear to have "workspaces" or group-level permissions, so either everybody with a Blender ID can edit a document, or only the original author can. ## Landed Names are from the Git log. This list is limited to functional improvements & bugfixes. **Blender** - [145b5a19014: UI: Armature Bones can now sort alphabetically in Outliner](https://projects.blender.org/blender/blender/commit/145b5a19014) (*Philipp Oeser*) - [2cbfb36a8b8: Anim: f-curve smoothing modifier](https://projects.blender.org/blender/blender/commit/2cbfb36a8b8) (*Ethan Porcaro*) - [732dadb8f56: Fix: Incorrect ordering when dragging multiple shape keys](https://projects.blender.org/blender/blender/commit/732dadb8f56) (*W_Cloud*) - [ec86802fa5c: Fix #143117: Duplicated object remembers slot name from source object](https://projects.blender.org/blender/blender/commit/ec86802fa5c) (*Sybren A. Stüvel*) - [be5ce752ed6: Fix #140085: Different tooltips for Clean Keyframes/Channels operators](https://projects.blender.org/blender/blender/commit/be5ce752ed6) (*Criss-Ivana*) - [0760e3a380d: Anim: Add operator to swap action on multiple datablocks](https://projects.blender.org/blender/blender/commit/0760e3a380d) (*Christoph Lendenfeld*) - [23cae58bb14: Fix #153447: Remap channels in action constraints when joining armatures](https://projects.blender.org/blender/blender/commit/23cae58bb14) (*Nathan Vegdahl*) - [5b9ef458ee6: Fix #153288: When joining armatures, skip renames on non-affecting actions](https://projects.blender.org/blender/blender/commit/5b9ef458ee6) (*Nathan Vegdahl*) - [5c76980fb73: Fix: Make F-Curve modifier label consistent with operator](https://projects.blender.org/blender/blender/commit/5c76980fb73) (*Christoph Lendenfeld*) - [7639bd6a081: Fix #153068: Update 'link select pose bones' so that it works correctly if starting at the root of a chain.](https://projects.blender.org/blender/blender/commit/7639bd6a081) (*Wayne Dixon*) - [cce2a2dc1d1: Fix: minor line drawing in Graph Editor](https://projects.blender.org/blender/blender/commit/cce2a2dc1d1) (*Christoph Lendenfeld*) - [1a8298109f4: Anim: Replace Action uses with new action](https://projects.blender.org/blender/blender/commit/1a8298109f4) (*Christoph Lendenfeld*) - [782b43a4415: Fix: scrub area - floating point labels are drawn with UI scale > 1](https://projects.blender.org/blender/blender/commit/782b43a4415) (*Christoph Lendenfeld*) - [5a82375f3a1: Fix: Replace Action operator not iterating over embedded IDs](https://projects.blender.org/blender/blender/commit/5a82375f3a1) (*Christoph Lendenfeld*) - [5cb034b3925: UI: Rename 'Coefficient' to 'Constant' for expanded polynomial modifier](https://projects.blender.org/blender/blender/commit/5cb034b3925) (*Wayne Dixon*) **User Manual** - [18989e97a: Anim: document "Replace Action" operator](https://projects.blender.org/blender/blender-manual/commit/18989e97a) (*Christoph Lendenfeld*) ## Ongoing Work [weekly-c]: https://projects.blender.org/ChrisLend/.profile/src/branch/main/reports/2026.md [weekly-n]: https://projects.blender.org/nathanvegdahl/.profile/src/branch/main/reports/2026.md [weekly-s]: https://projects.blender.org/dr.sybren/.profile/src/branch/main/reports/2026.md [highseverity]: https://projects.blender.org/blender/blender/issues?state=open&labels=268%2c285 - [High Severity][highseverity] bugs: None! - Christoph: - [Christoph's weekly report][weekly-c] - Landed the replace action operator [#153455: Anim: Add operator to swap action on multiple datablocks](https://projects.blender.org/blender/blender/pulls/153455) - bugfixes for 5.1 - Nathan: - [Nathan's weekly report][weekly-n] - Sybren: - [Sybren's weekly report][weekly-s] - [#145245: Impossible to add drivers via library overrides when linked object has animdata](https://projects.blender.org/blender/blender/issues/145245) ## Layered Animation: Splitting up the Project For planning & tracking purposes (and the happy warm feeling that we're finishing things), we need to split up the upcoming Layered Animation project into smaller milestones. Probably best to do this across multiple module-meetings, so that more people can give their input. ### Bigger Phases - Phase 1: Slotted Actions (landed in Blender 4.4, [docs](https://developer.blender.org/docs/features/animation/animation_system/layered/#slots) & [original planning](https://projects.blender.org/blender/blender/issues/120406)) - **Phase 2: Layered Animation (we are here now)** - Phase 3: Non-linear editing with strips (2027 or later) Note: [the data model](https://developer.blender.org/docs/features/animation/animation_system/layered/#action-data-model) is already prepared for the entire system of slots, layers, and strips. ### To Do Some of the work (but these aren't milestones yet): - Create a **tracking task** for the project. - **Removing *Baklava Phase 1* limitation on layers**, allowing more than one layer in each Action. All those assertions should be replaced by *Baklava Phase 2* limitations (ensuring there's at most one strip, it's infinite, hasn't moved, and is of type 'KeyframeStrip'). - **Implementing the UI** for managing layers in the Action Editor. - Graph Editor and Dope Sheet (other than the Action mode): **UI for selecting the active Layer** for each Action that's in view. - **Reimplement the 'animation filtering' system.** This sytem determines which animation data is shown in an editor, and which data is operated on by tools. Also see [note on HackMD with some new & mostly old ponderings](https://hackmd.io/iPobCBRkS8-uvBCJcW1HTg) - **Updating tools** to work with multi-layered Actions. - Many tools will, at first, just operate on the active layer. Potentially they could be limited to the top layer only. This makes it possible to get Blender into a state where we can **introduce multiple layers, without breaking** any single-layered workflows. - Make a **tools API** where an animation tool can just receive the data it needs to operate on (instead of having to how to do NLA time-shifts etc.), do its work in a predefined space, and tell the API to store the result as keyframes. The API implementation can then take care of, for example, time shifting and reversing any additive layers that sit on top of the active layer. - Christoph: maybe this is not high-prio enough to do now. - Sybren: we may get a better 'anim filtering' system when we also think about the tools API at the same time. - Sybren: let's keep it at the 'conceptual design' level. - Possibly re-think how **selection state** is synced between 'animated things' and their animation channels. - Adding an **experimental flag**, so that we can merge to `main` without immediately exposing the multi-layered stuff to all users. Most of the work will still happen on branches, but this way we don't have to wait with merges until everything is completely done. - To do: **make a list of all the tools** that need updating. Exhaustive list. For example, by finding all uses of the current anim filtering system in the code. ## Patches: Review & Decision Time - Rigify bugs. Special setup leading to exceptions. Q: supported or not - [#152368: Rigify raises error when two specific skin types are connected](https://projects.blender.org/blender/blender/issues/152368) - [#152371: Rigify raises error when two specific skin types are connected - Problem no. 2](https://projects.blender.org/blender/blender/issues/152371) - Christoph: is this an issue to fix? Or is the fix to show a better error message, because the situation itself is unsupported? - Demeter: we only fix regressions. - Demeter: will take a look. - Christoph: A potential solution is also to report a better error -> [#153939: Fix #153766: rigify - better error with linked collection](https://projects.blender.org/blender/blender/pulls/153939) ## Help Needed - [#145310: Library Override allows editing Drivers but edits are not saved](https://projects.blender.org/blender/blender/issues/145310) - John: Wanted to ask about design questions for [#135496: VSE: Automatically set playback range from strip bounds](https://projects.blender.org/blender/blender/issues/135496); seems like it would be useful for animation module too (auto-set playback range to span new markers, keyframes) - This is about the VSE scene itself. Not regarding the scene referenced by Scene Strips. - John: playback range of the scene *not* syncing is already perceived as a bug by VSE users. - John: Dalai also thought expanding this into keyframes (where new key expands the scene range) could also be nice. - Sybren: agrees it's a good idea to have the VSE also "own" the scene playback range (when the VSE is in use). - Christoph: :+1:, but not sure if we need a preference. "Persisten settings" would be great to have here as well. - **Module agrees** it's good for the VSE. For animation (like key insertion), we'd need a more detailed design. ## Next Meeting The next meeting will be on [date=2026-02-12 time=12:00:00 timezone="Europe/Amsterdam"]. Again it will be open for everybody who’s interested. The [provisionary meeting agenda][draft] will be updated before the meeting.