What is the best way to go about creating a distance-matching blendspace?

I’m trying to create a distance-matching blendspace node, but I’m having trouble understanding the lingo in BlendSpace.h and BlendSpace.cpp. (A picture of a non-functional node is shown below.)

DMBSp

For example, what is a BlendSample? Is this the animation sequence, or is it a “random” sample from the grid?
What is the BlendParameter? Is that simply an axis of the blendspace (0, 1, 2), or a value along the axis, or something completely different?

Conceptually, I think I understand what I need to do. I show a proof of concept in the below video, where the Start and Stop states are both blendspaces driven by distance.

I hacked my way through calculating the normalized time and then plugged that normalized time into a Blendspace Evaluator. But this approach is cumbersome, since it requires I make a struct of the sequences I use in my blendspace, and then pull information from those sequences to then determine the normalized time that will drive the Blendspace Evaluator.

I would like to make a single node, similar to the Blendspace Evaluator but that is driven by distance rather than time. (Of course, time will be found internally, which is where I’m stuck.)

My outline is the following:

  • Use distance as the input parameter.
  • Get the corresponding time from each of the relevant animations by accessing distance curves on the sequences.
  • Average those different time values using the blendspace weights (somehow?).
  • Get the normalized time.
  • Set InternalTimeAccumulator = NormalizedTime

Are there any good resources to help me better understand the individuals pieces of the BlendSpace class? Can anyone provide direction?

you find a solution yet? i’m willing to working with you to find a solution! My Discord adore#4366 messages me with this post link so i know it’s you! if you willing to work with me ofcourse!

Yeah, I figured out a solution. I actually made my Animation Matching Suite plugin, and it includes a node for distance matching and pose matching BlendSpaces.

We can talk more on Discord, if you’d like. You can find my Discord on the Marketplace page.