2021-04-29 Animation & Rigging Module Meeting

The main goal of this meeting was status update on & discussion of ongoing work.

The meeting was open for everybody interested to join on Google Meet (link below).

Present: Bassam Kurdali, Beorn Leonard, Christof Lendenfeld, Dalai Felinto, Daniel Salazar, Demeter Dzadik, Hjalti Hjálmarsson, Julian Eisel, Luciano Muñoz, Matthew Luhn, Paolo Acampora, Rik Schutte, Scott Wilson, Sebastian Parborg, Sybren Stüvel

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


Pose Library Demo

Sybren gives a demo of the current state of the new pose library: presentation.

These meeting notes describe the discussion that happend during the demonstration, and not the demo itself.

Select Bones operator

  • Daniel: What happens when bones are hidden? Does that un-hide the bones?
  • Demeter: There is an existing operator to make selected bones visible, ‘jump to target’ on bone selectors. This makes “unhide on select” relatively uncontroversial.
  • Julian disagrees: It is controversial, selection should not un-hide.
  • Bassam: Relabel the button to something like Reveal & Select.
  • Luciano: Maybe make it a checkbox?
  • Julian: Yes, could be checkbox, would be in line with un-hiding curve handles when selecting curve key.
  • Sybren: Bones can be hidden in various ways. Un-hiding entire bone layer simply because one of its bones should be selected is going too far.
  • Bassam (later in the meeting, but noted here for consistency): What is rumoured to be planned for Blender: Collections inside of armatures instead of the current layer system. Poses in the pose library could be associated with a new collection that lives as a subcollection of pose library collections. This could provide an elegant answer to the unhiding-on-selecting. Julian: this [a collection-like hierarchy that is not 1:1 related to the bone hierarchy itself] also relates to facemap design, where sometimes you want to select the entire head, sometimes a detail.

Pose Library Use: from the 3D View side panel

  • Julian: Placement in the sidebar is open for discussion, may be over-crowded for daily use. It could also be moved to other parts of the 3D View, like in a dedicated new region in the bottom.
  • Hjalti: Since the toolshelf (T-panel) is useless for animators, it could be a great spot for these kind of tools. This is a broader discussion though.

Pose Creation: from the Action Editor

  • Demeter: It is controversial, but can’t we make Blender, when creating a new thing, block the UI and demand a name?
  • Sybren: Asking for parameters of an operation, before that operation is run, goes against Blender’s design. Ton’s idea about this, which I agree with, is that plenty of times you wouldn’t know what parameter values you want until you’ve seen the result. It should be possible to just do something, see the result, and then tweak the parameters so that you get what you want. There may be situations in which this turns out to be unattainable, but until that point is reached we should follow this design.

Pose Creation: From Existing Animation

  • Beorn: mentions Studio Library (GPL-licensed pose lib), which is used in his studio:
    • Single studio-wide poselib everybody can throw poses into.
    • Separation between official production poses, and quick-and-easy way for people in the studio to share poses (for example for continuity between shots).
  • Sybren: We want to implement basic functionality first, with a core design that matches Blender’s design.
  • Demeter: Storing poses in a different way can be done in a custom add-on.
  • Bassam: question for Beorn. Instead of saving to external blend file, would having an “export” operator be enough? Beorn: that’s probably how Studio Library works, likely just writes JSON files.
  • Sybren (didn’t say this in the meeting but is writing these notes so can add anything): my Real Pose Copy add-on stores a pose as JSON on the clipboard. This kind of functionality could be the basis for such add-ons.

Pose Creation: Copy-Paste from Animation File

  • Sybren: “Open In Blender” opens another Blender process. This means that the scene file you’re working on doesn’t have to be re-loaded after you’re done with the pose library file.
  • Thumbs up from Bassam & Luciano.
  • Bassam agrees with Ton: writing to files that then are also loaded can become messy.
  • Julian also agrees with Ton: the user has to be in control over what gets saved to what file. When this is implemented well, we can add “helpers” to make things easier & faster.
  • Luciano: is the rig part of the pose library blend file? Or linked in? Sybren: it is linked in.
  • Daniel wants more control over what goes into pose. He suggests copying keys instead of always taking the current loc/rot/scale/bbone values. Sybren explains this was originally implemented, but decided against to make it possible to have unkeyed poses (like inbetweens) copied into the pose library as well.

Influencing Preview Icon Look

  • Rik: is it possible to set the background color there, so we don’t need a background pane?
  • Sybren: That would be the world background color, then. It’s in a different panel, but closer to the workbench render settings, and won’t require changing the selection to some background object.

General Questions

  • Scott: Would the character be an asset itself?
    • Sybren: Yes, in a future version of the Asset system, which will allow linking into the scene.
  • Scott: How about flipping over other axes than the X-axis?
    • Sybren: This would be a broader scope than just adding another axis; Blender has a naming convention for left/right bones that it uses to flip things, but not top/bottom or front/back. It is also unknown how many practical uses this would have.
  • Scott: is keying necessary? Sybren: no, the current pose (loc/rot/scale/bbone) is copied. Keying is only necessary to indicate which other bone properties (like IK/FK switching) should be included in the pose.
  • Scott: are object transforms supported? Sybren: no, only armatures for now.
  • Scott: does the process started with the Open In Blender operator inherit the environment variables from the currently-running Blender? Sybren: good question, I didn’t test for this. This should be the case, so it’ll be fixed if it doesn’t.

Short-term goals

Decision time

  • D10766: Pose Mode: Flip Pose Transform, keep or not?
    • Sybren wants to keep the patch only if it adds concrete value that people were waiting for.
    • Hjalti: Nah, it’s too much like copy+paste-flipped.
    • Beorn: May be useful for add-ons, but that is more like a general feeling than solving a concrete case.
    • Sybren: For the pose library there are already lower-level functions for flipping an Action and applying that to a pose, which combines into pretty much the same functionality. This can be used as building blocks for add-ons.
    • Sebastian: agreed to close because of the above
    • All present agree to close the patch.

Other Topics

  • Bassam: for discussing offline / after meeting
    Header of graph editor, make it behave with newer designs with ‘overlays’ menu, instead of everything crammed in Views menu.
  • Sebastian asks Demeter: in D10974: Add geometry parameters for custom bone they removed custom bone hiding; is there anything else you think should be done? Demeter: is’s good like this, it doesn’t appear to break Sprite Fright rigs.

Next Meeting

The next meeting will be on Thursday 27 May, 17:00 CET/Amsterdam time. Again it will be open for everybody who’s interested. The provisionary meeting agenda will be linked in the #animation-module channel before the meeting.


I tested this, and environment variables are inherited by the new process.

May I ask is it possible to improve “Motion Path” speed for tracking Bone/object’s Animation ? it is very crucial tool for animation I think and it is so slow to create and refresh, I think it has more potential to improve, for example using Grease-Pencil to draw and update lines and key or using GPU computation to draw faster, it is even annoying when tracking multiple bones on a character for example tracking its arc of motion, i guess Motion-Path code needs some review :slight_smile:
Thanks in advance

1 Like

To be blunt, nope, you may not. This forum is for discussion with & between Blender developers, and explicitly not for requests. If you want to work on improving motion paths yourself, then by all means ask away (in a separate thread) and we’ll do the best we can to support you in this. If this message is just to indicate that you think this area of Blender is important to work on, the answer is simply: yes we know.

As a rule of thumb, Blender developers generally are aware of shortcomings in Blender. It is not because of lack of interest that these aren’t all tackled, but rather due to a lack of people who have the knowledge and time to actively work on solving these shortcomings. If that’s something you can help out with by joining the development force, you’re more than welcome!


UPDATE: The next meeting will be on Thursday 27 May, 17:00 CET/Amsterdam time. The previously scheduled day is actually a national holiday in The Netherlands.

1 Like