Base Layer entry point not working

When I exit a substate back to base layer, it goes to the default state instead of entry point.
I’ve been desperately waiting for entry/exit points so I could optimize my mecanim graphs (see illustration)

Why would base layer have entry points in the first place ? is this a bug and should be reported ?

Ah apparently the exit nodes are used to connect substatemachines directly
And if no such connection exists it goes to the default node.

A friendly fellow in the unity channel pointed out to achieve the left diagram, just need to connect the substate machine to base_layer instead of exit.
Unfortunately I’m not sure it was made to work this way, getting a lot of quirks here and there, will give it more time

1 Like

Hey,
Just want to say thanks.
I had the exact same issue and using the “Up” node helped.
I also want to point out (maybe Unity guys are listening) that it was super confusing to me. The docs state that entry and exit nodes are used to provide encapsulation, so I thought that this was the intended use of the exit node, not the “up node”.

In fact, usage of the up node breaks the encapsulation, because you have to introduce a dependency to the upper layer in your substate - it would be better to use the exit node instead in my opinion. I wonder what Unity has to say about this.

Anyway, thanks for your post, I’d be still scratching my head if I didn’t find it.

I just found out, that when you exit the substate by the “up” node the OnStateMachineExit method on StateMachineBehaviours won’t be called as opposed to exiting via the Exit node.

Would be cool if that friendly fellow from Unity could comment on this.

The idea of substates and encapsulation looks broken to me because of that.