Animations Setup for Complex Player Animation Structure

I was working on a 2d game where the player character has all kinds of animations like idle, run, jump and die.
My Animation Controller’s current structure:

Now after getting a powerup, normal player character gets upgraded with superhero costume like this way:

After converting to superhero character, there are multiple animations like walk, idle, jump and die.

So what is the best way to manage all these new animations as per my current player animator?
These are all 2d frames of animations for a player character.

Shall I require to create another animation layer for this purpose? To make everything easy to organize.
Please share your suggestion regarding this so I can move ahead in implementation.

Animator Override Controllers are probably the easiest way to do something like this for a simple game, though they are rather clunky so I wouldn’t recommend them for anything more complex.

If you want a more flexible system, you should check out my Animancer plugin (link in my signature).

1 Like

try using sub-state machine for this

At present, I used Animator Override Controller and it worked for me though I require to do some manual coding to update Animator Controller runtime.

Here is the code:

[SerializeField] RuntimeAnimatorController playerAC;
[SerializeField] RuntimeAnimatorController superPlayerAOC;

myAnimator.runtimeAnimatorController = superPlayerAOC;
myAnimator.runtimeAnimatorController = playerAC;