2021-09-16 Animation & Rigging Meeting

The main goal of this meeting will be to determine a roadmap for Blender 3.x, and a status update on & discussion of ongoing work.

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

Present: Christoph Lendenfeld, Demeter Dzadik, Jason Schleifer, Nico Sanghrajka, Orestis Konstantinidis, Pablo Colores, Sybren Stüvel

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


Since the Last Meeting / Announcements

  • New face: Pablo, who’s aquaticnightmare on Blender Chat.
  • Sybren back from holiday (first three panoramas and first six portraits)
  • Orestis wants to demo riggin with nodes, does that with C4D with Expresso visual programming language for making expressions. Will prepare demo for next meeting. Likes geometry nodes & the fact that an armature is a single object. Could go as far as outputting the armature/deformation as well.
  • Sybren gives update on Asset Browser / Pose Library work.

Short-term goals

Previous meeting some new short term goal candidates were discussed (but apparently not included in the notes):

Decision Time

Blender 3.x roadmap

  • Jason: Would love to understand what the ultimate goal is? What are we happy with when we hit it in 3.x?
  • Orestis: Would guess amazing performance is the ultimate goal.
  • Sybren: Animator (sec/week) performance? Or Blender technical performance?
  • Jason: “What makes it possible for you to make better creative decisions?” instead of focusing on technical performance (sec/week). A crazy fast system makes it easier to make creative decisions, rather than having to start working because otherwise you don’t get the shot done.
  • Orestis: People can make add-ons to allow amazing workflows, but they cannot make the software any faster.
  • Orestis: Suggest rigging nodes as goal
  • Christoph: Suggests bone layers as goal
  • Sybren: Nodes might give us faster evaluation, and more powerful nodes may make the armature simpler (less bones necessary, less to evaluate)
  • Sybren: Game engines do GPU deformation, but to go there we have to implement lots more on the GPU. Probably too much work.
  • Jason: Focus on speed of animators, via faster evaluation & faster tooling.
  • Orestis: Do we have profiler performance, like how much percent is mesh deformation, how much is constraint evaluation, etc?
  • Demeter: Most animator complaints he hears are about bone selection. Maybe the Face Maps made by Campbell could be worked on further?
  • Jason: Such a system works really nice, but getting a “flash” of where the pickable points are would be very useful. Otherwise it’s hard to get started on a face. Also a togglable hierarchy would be great, so that you can toggle between coarse facial controls and dive into more fine-grained control points.
  • Nico: Did rigging with such a system at Dreamworks (Penguins in Madagascar). Face parts would be defined by riggers and can be dragged around. If that’s not granular enough you can press a hotkey and it would show dots for finer control (like 1-2-3 keys for three levels of controls). Helps with pickability, and could also remove the need to choose colours for bone groups / controls
  • Demeter: Do you click to select, and then drag? How would you choose between grab & rotate?
  • Jason: You can have different gyzmos, or even different places on the control area that trigger different operations (drag here to rotate, there to translate).
  • Orestis: Has some experience with rigging like this, and shows a simple rig he made in Cinema 4D. Rotate on one axis with LMB-drag, other axis on RMB-drag, shift-click to reset. All Python-based.
  • Nico: In Primo there is a hotkey you can press and it would highlight all the parts in different colours.
  • Jason: Defining those parts procedurally would be great, because then you can swap out & regenerate your geometry.

Other topics

  • Clearing parent also removes Armature Modifier. Bug or feature? (reported in chat by Daniel Salazar)

    • Demeter: relies on this behaviour all the time, is nice and fast. Proposes to make this an extra option for the unparent operator to have “Clear parent and remove armature modifier” as an option.
    • Demeter: proposes to remove the armature stuff from the Ctrl+P menu, and have a different menu for binding (armature deform, surface deform, lattice, etc.)
    • Could be nice if this moves the deformation modifier to the right spot (above generative modifiers, for example)
    • Jason: this could be a great 3.x roadmap target, to rethink how we look at rigging.
    • Sybren: let’s break it down into “fixing the glitch” of the disappearing modifier + bigger design task.
  • D12387: Fix T91133: clarify Animation ‘Clean Channels’ and ‘Clean Keyframes’ description: what should the “Clean” operators do exactly?

Help Wanted


Jason demos his pose library use, with operator to auto-regenerate the pose assets (including name etc.). He mirrors hand poses to the other side before creating the pose, and the pose asset then contains the same pose on both hands. This makes using it easier, because you just need to select bones & apply the pose.

  • Sybren: we can do this in the pose library as well, storing both the pose of the selected bones and its mirror.

Next Meeting

The next meeting will be on Thursday 30 September, 18: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.