Problem with Unity Blend Tree Transitions

I have a character with a weapon wearing a cape with two animations - Idle & Run.

I made a blend tree to blend between Idle and Run which works fine but during the blend tree transition from Idle to Run, the character’s hands clip through the cape which is undesirable as she reaches to grab her weapon.

Is there any way where I would be able to have more control over the transition from Idle to Run? For example I tried making a short animation clip which is the transition from Idle to Run but I do not know how to add it to the blend tree as it doesn’t seem to blend smoothly.

Remove the blend tree and make the state machine linear instead, from idle (loopable) to idle_run_blend to run. Transitions will have 0 blending because you can blend them seamlessly in 3D package.

For the movement to feel smooth, isn’t a blend tree required for that to work?

The problem with this setup is that it needs a certain threshold (the float variable as condition) before it starts running (having a delay) which makes the motion not as fluid as a blendtree

Why is this variable transition needed? Are there specific gameplay reasons the character has to transition from idle to run at a variable speed? If this variable is to support a walk cycle - without creating a walk cycle animation - create a walk cycle instead.
What purpose does a variable transition from idle to run serve?

On the other hand - realizing a variable transition is not a ‘requirement’, the delay required could be accomplished in the ‘fake’ animation transition, controlled by the artist.

No - a blend tree isn’t required to feel smooth, quality animation is required, which looking at your example - you seem competent to create. :wink:

The only other option I can think of (I’m an animator not a programmer so there may be other options) is to separate the cape from the existing rig and attach colliders to the bones that control the cape, to allow the cape to be pushed out of the way when the transition happens. This setup would probably cause more issues beyond fixing this one issue.

I tried going with the linear state machine approach but it doesn’t feel as smooth as what a blend tree offers without rewriting my character animator code so I went with the simplier solution instead.

In the end after thinking about the problem of the hand clipping with the cape I thought of another simplier solution instead which is for the character animation to have similar stances to each other.

Previously

Idle - wielding sword with one hand
Run - wielding sword with two hands

Now

Idle - wielding sword with one hand
Run - wielding sword with one hand

1 Like