Choose Entry into State Machine


Iv’e been making an Anim-graph, and Its pretty complex. Iv’e got State machines inside of state machines, and I was wondering if there is a way to choose the entry point sort of like a transition statement? For Example, Iv’e got a “Grounded” State machine, and an “InAir” State machine, and both have multiple states inside of them. In the grounded state machine I’ve got states for directional movement and strafing movement. This helps keep transition logic clean and easy. When blending to another State machine I need to be able to choose what state to blend to based on certain parameters like a transition. Iv’e tried using a conduit as an entry point, but UE4 doesn’t allow this. Basically I need to choose which state inside a state machine to blend to when transitioning from one state machine to another. Is there any way I can do this? (I hope this isnt too confusing.)

Thanks In Advance!

Same here. Tried using a conduit and got the same error, can’t use it on entry.

I dislike the animmontage, event graph workflow. Very slow and tedious when you’re already working with C++

EDIT: Not sure if you’re still looking for an answer but it’s an easy fix.

Long time passed… but I had the same problem. Maybe others have it as well. Here is my solution:

Entry → EmptyState → Conduit

Empty state is just a junk state. It can be empty. Both the transition before the Counduit and the Counduit is true, the first one with blend time 0. After the Conduit you can have your branches. The selected animation will be blended with whatever animation you had before you switched to this state.

Hope it is understandable and helps,
If it isn’t, let me know and I can try to explain better / include images or project files.


It seems to me that blend time after the Counduit doesn’t matter. It will be skipped if the state before that was instantly skipped.

Counduit isn’t even necessary I guess, you can just add your branches right after the junk state.
Btw. the state machines has a “Max transitions per frame” property, 3 by default, I guess you can ruin this trick by changing that to 1 :slight_smile:

“I dislike the animmontage, event graph workflow. Very slow and tedious when you’re already working with C++”

Did I really say that? Boy was I a dumb-dumb a year ago.

I understand exactly what you’re saying but I’ve long since solved my specific animation needs. Thanks for the reply anyway Elathan! I’m sure it’ll help others who find this Question! :smiley: