2021-04-15 Animation & Rigging module meeting

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

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

Present: Bassam Kurdali, Christoph Lendenfeld, Demeter Dzadik, Luciano Muñoz, Paolo Acampora, Rodrigo Blaas, Sav Martin, Sebastian Parborg, Stan Paillereau, Sybren Stüvel

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


Since the Last Meeting / Announcements

  • Paolo introduces himself. He is a rigger/developer, working on a RigNet add-on for Blender.
    and PizMo, an add-on to use the gyzmo system for mesh-based bone shapes; will be working on those two add-ons in the coming months.

  • Rodrigo introduces himself. He is a producer/director/animator (imdb) and has an interest in Blender and to help moving the animation system forward.

  • New module members: Demeter, rigger at Blender Animation Studio, and Sebastian, developer at Blender Institute.

  • T57003: Copy visual pose and paste over frame range was taken off the short-term goal list, to make place for T81836: Design: New Graph Editor Key Manipulation Operators.

  • There have been meetings about attribute painting; before such a meeting, Sybren highlighted the unique nature of vertex group weight painting when it comes to symmetry. Unknown if there are any meeting notes availabe.

  • Sybren and Julian Eisel have addressed lots of smaller quality-of-life issues in the Asset Browser / Pose Library. The Asset Browser will not be part of Blender 2.93 LTS, and will be included in Blender 3.0.

  • Sebastian fixed T81707: Spline IK Joints “Floating” above curve and T85796: Alt+Click to select overlapping bones.

Short-term goals

  • T81836: Design: New Graph Editor Key Manipulation Operators. Sybren discussed the new design with Ton, and we’re at a “change this and it’s ok” point now. The ruler as overlay is still not ok; moving it into the header (where other modal operators show their status as well) is approved. The UI team at some point noted that this was undesired as the menu should always be shown, but given the lack of direction of where to otherwise show this information, we’ll stick to the current design.

    • Bassam: there are a few downsides to this location that should be noted:
      • All the way at the top/bottom can be too far out of view to notice.
      • Having the ruler in top works against positional muscle memory, so you lose some speed and accuracy when working that way.
      • The rejected “overlay” approach is not that unique; other gyzmos for transforms and mesh editing also draw on top.
    • Christoph: will implement the ruler in the header and update D9054.
    • Sybren also discussed with Francesco Siddi about this, who suggested:
      • Instead of bones instantly disappearing or reappearing, fade them in/out. This makes it easier to see/understand that this is indeed intended behaviour.
      • Provide onion skinning for the 0% and 100% slider positions, so that it’s more visual what you’re blending between.
    • Luciano: fading is nice, but should be done in a way that doesn’t slow you down. Animators regularly use these tools in quick succession and at high speed. Having to wait 30ms for each operation to do its animation before it can be used is not acceptable.
    • Luciano: onion skinning works well for full-body motion or limbs. It may not not work between faces, though, because then it would all be drawn in one place. Bassam: you have to offset them, then.
    • Sebastian: onion skinning will probably be easier to implement when Clément Foucault and Jeroen Bakker have implemented viewport compositing.
    • Rodrigo Blaas writes: I’m sure you have seen this already. The zip file in the page is a video of an animator using Premo. This is one of the best UI experiences I’ve experience as an animator. Not sure it solves the pose slider on the asset library but maybe it gives you an idea https://dl.acm.org/doi/abs/10.1145/2614106.2614123?download=true (be sure to download supplemental material and watch video).
  • T83068: Motion Paths: Refresh all.

    • Luciano: as a suggestion for further improvements, have a list of objects/bones with motion paths in its own panel, similar to the shapekeys list. You should be able to add a new path, edit it, delete them, etc. there. That would also be a natural place for a “Refresh All” button.
    • Sybren: good idea, may make working with motion paths more straight-forward. Out of scope for this patch though.
    • Luciano: this patch is basically a workaround for not being able to have all motion paths update automatically all the time.

Help Needed

  • Proposal: Add geometry parameters for custom shape

    • Luciano has ideas to expand the idea beyond just transform shapes, which will add a lot to what is possible in rig design. Examples are to also include parameters for the thickness of shapes and for their shading in the viewport.
    • Bassam: there is a bone widgets add-on (name unknown), has a list of predefined bone shapes. It allows you to go directly from pose mode on the armature into edit mode on the custom shape. The add-on takes care of showing the shape in the same transform so that you don’t have to reorient it in your head while editing.
    • Sebastian: ok to keep the patch’s current functionality, and add more functionality later?
    • All present agreed the patch as it is now is already a good idea.
    • Bassam: “in front / X-ray” option is now armature-wide, but might make more sense as per-bone option as an override on the armature option (keep armature setting / always on / always off). His production has an add-on to mimick this using bone layer hiding.
    • Sebastian will do first code review before handing over to Sybren.
    • Demeter warns about compatibility when scale attributes in Python change.
  • Meta Curves

    • Luciano: way to handle larger numbers of keyframes. Nice stuff. Has ideas about improving the interaction, discussion will continue on devtalk.
  • Sav Martin: I just wanted to show what I’m working on with Juan Fran Matheu, and know if it seems interesting for the animators. It is a dynamic bone picker, that hides all the bones until the mouse cursor is in the vicinity. Videos: Rain, full body and Rain, face.

Next Meeting

The next meeting will be on Thursday 29 April, 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.