Animating armatures in object mode

I’m a technical artist that is currently learning Blender on my free time in order to create a pipeline around it for game and short movie projects. I would have a lot of good things to say about the 2.8 version, but to keep it short here is my feedback related to the animation system.

I’m currently creating a toolset to create character rigs, similar to rigify.
So I started on this and came across something I felt was kind of wrong.

Animating armatures must be done in pose mode <

It seems to be the intention in Blender. Even though it is possible to create a rig with empties that constraint the armature, allowing animation to be done entirely in object mode.

But if you proceed that way, you won’t be able to benefit from the Actions or the NLA editor. That’s a downside I could live with, but I feel also that animating armatures in object mode is kind of going against how it should be done in Blender.

So after thinking about it for a while and researching on how people are using the armature system it seems to me that I still can forsee very problematic situations about the pose mode.

Here is the perfect example:

Animating 2 characters that fights for a bottle of wine…

The animator on that task will need to switch back and forth between armatures and modes.

I totally understand the concept of armature as an “entity” and I think it makes sense on an organisation level. That’s probably why it was named that way and not “skeleton” or “rig”.

But the need to be in a special mode to animate them make it not very convenient to my opinion.

Also I personally find it a bit messy to have deformation bones and controls bones alltogether. Skeleton and rig are having 2 different purposes. The skeleton is what deform the mesh(es) and the rig is what allow animating the character. It seems to me that the armature is kind of trying to do both at the same time.

So here is the suggestion I think make the more sense to me:

There should be a clear separation between the skeleton and the rig. But both the skeleton and the rig could be contained in the Armature class. The skeleton should be edited in edit mode while anything in the rig hierarchy can be selected/manipulated/animated in object mode.

This way it keeps the armature as an entity and it keeps it well organized. That also allow the users to interact more easily with it. That would require to extend the armature functionalities to suppport that but I think it would really improve the animation system.