I have created Dodge animations for moving in different directions (left, back, right, forward) and also have a 2D vector of the current direction of the player’s input (Y for forward/backward and X for left/right) with values ranging from -1 to 1. I have also created a blend space that blends these 4 animations seamlessly based on the 2D vector input, providing an appropriate animation regardless of the direction. Even if the player were to use a controller and point in any angle, this blend space would work perfectly.
However, my goal is to play this blended animation as an animation montage, using the X and Y values of the 2D vector as inputs. The “Play Montage” node only allows me to use animation montages, not blend spaces.
I have been searching for a tutorial or discussion that can help me achieve my desired outcome, but most people only use one animation for a dodge, regardless of direction, or use 4 separate animations (forward, backwards, right, left) or even 8 for corner cases such as back-left.
I understand that blend spaces are typically used for longer states such as running, strafing, and swimming, and should be used in animation blueprint, not the character blueprint when I play montages, but I have been working on my project for two weeks and I fear I may be missing something. Perhaps there is a different way to achieve an omni-directional roll animation.
So, to sum it up
I have:
- 4 dodge animation for each direction
- 2d vector of desired direction
I want:
- play blended animation once for any direction based on any 2d vector
(I’m using third person character template)
Character blueprint (for now only with roll forward animation montage):
Blend space, which might be helpful to understand what I have in mind: