Animation blueprint execution order.

Hi everyone,

I have some troubles understanding what is execution order between, regular blueprints, anim blueprints and anim graphs. Here is an exemple :

I want to use iks to ground my character’s feet. I have one character blueprint with all the code (trace, calculate the position…), my anim blueprint with some code to get the values from my character blueprint and the anim graph with the two bones ik and the animations.

From what I understand the execution order is :

  1. Character Blueprint Event Graph
  2. Anim Blueprint Event Graph
  3. Anim Blueprint Anim Graph

So the animations is evaluated in the anim graph. My problem is I would like to evaluate the animation and then **after **my character is in the position, use the functions in my character blueprint to ground the feet.

Am I wrong (probably) and so what is the solution ? Thanks :slight_smile:

Animation execution order is fairly complex, especially when you consider parallel evaluation and the fast path.

Ideally, you dont want to call BP at all from your AnimGraph. (This is the FastPath optimization - you see with lightning bolt if it is fast). It causes a thunk to the BP VM.

Ideally, you calculate any variables ahead of time and then simply access member variables during the AnimGraph.

You can still apply foot ik in the Animagraph, just store the results of the ground positions in a member variable.