How do I make this animator simpler?

I have 3 walking animations and 3 idle animations. Down, left, and right, haven’t done the animation for moving up yet.

I’m making a 4-way movement thingy akin to RPG Maker. You move around and the different facing animations play. Since my art style is also at an angle and not straight down, I can’t just rotate the player object and have 1 movement and idle animation.

When I eventually make and add the “up” animations into the animator, it will literally be a d20 shaped spider web.

This is what it currently looks like:

I’m basically adding a transition for every possible movement combination; Facing “left” when idle then walking “right”, walking “left” then also holding down “right”, etc.

And I’m thinking there’s gotta be a simpler way of doing this. It reminds me of when I try to setup auto-tiling tilemaps, and end up having to make like 20 unique tile variations.

P.S. The actual movement is gonna be 8-way, so I also need to be able to go from walking down to walking right or left instantly (which I haven’t fully added to the animator window yet).

I can also see my script becoming a spider web of IF statements because of this.

Some people like to use Blend Trees for that sort of thing because it lets you group the animations a bit better, but it’s still going to be very fiddly to set up (meaning lots of manual effort and lots of opportunities to make mistakes).

You might also be interested in Animancer (link in my signature) which has Directional Sprites examples that demonstrate a much cleaner way to approach this sort of thing, both in terms of setting things up and the code you write. So much cleaner in fact that the second example can change between 4 and 8 directions without needing any modifications to the code.