Is this a character animation best practice?

Hey guys & gals, I’m looking for some advice on best practices for a character animation system, mostly concerning the use of “proper” blending, if there is such a thing.

Currently, I have a state machine for most of my characters that’s mainly reserved for locomotion, pretty standard stuff there. I also have two slots, “upper body” and “full body”. UpperBody gets blended together with the cached locomotion pose via layered blend per bone from the waist up, which is then in turn plugged into a regular Blend node to combine it with the FullBody slot. The output of that goes into the final animation pose.

I have a bunch of animations, e.g. shooting (upper body blend), leaning left/right (full body blend), etc. but since my system is set up as such, I have to use animation montages for all the “situational” animations, e.g. leaning, assuming an attack position, etc. for them to be able to feed into anim slots.

While this works as it is, it’s annoying to have to make all these anim montages every time I make a new animation for a character. My question is if this is the recommended approach, or should I be doing something differently?

Here is a screenshot of how a typical setup of mine looks like in the Anim Graph:

This is how I would normally trigger a “situational” animation, keeping the character in a specified animation state after invocation, in this example an attack position:

Cheers,
David

Well that blend node with fullbody slot seems useless to me, you can just put the fullbody slot after “layered blend per bone” and before you save the “loco upper cache” it should work that way.
Otherwise you got the idea right, montages are situational animations, like shoot/attack, (do something) while the locomotion is more for movement, and looping/blending states, you should mix them and find proper balance, between state machines and montages.