Download

8-way run cycle blending

I’m trying to work out the animations needed to create an 8-way run cycle blend space. However, there always seems to be an issue with the legs tripping up between one pair of animations. For example, blending a ‘Run Left’ with a ‘Run Back and Left’ animation pair. Either the hips are facing the wrong way or the legs are in the wrong position to blend neatly. Is there a trick to doing this or are you always having at least one movement direction that doesn’t blend well?

Have you tried a standard blendspace not the 1d blend space? I do not think this is possible though that would be how i would try since you can’t physically play two different animations at one time that I am aware of anyway.

The 8-way uses 2d blending which can blend up to 4 animations.

I’ve used mixamo and stock unreal animation to make 2d movements, and as far as I can tell, those blendspaces didn’t have any issues.

The animations I refer to used 17 clips - 1x idle + 8x walk movement + 8x run movement. It is also possible to use 4x movement per movement speed (forward,backward,right,left), but diagonal movement will be a bit awkward.

The “trick” is probably that you need to maintain same “pacing” for animation. Which means, that in each direction animation must do same number of steps per second, touchdown (foot with ground) should occur at the same frame), the cycle should start with the same foot in every direction AND starting frame should be either the same or very similar for each animation. Well, starting frame thing probably isn’t necessary, but the rest would apply. If at one directional movement clip right foot is in front of character and in another clip it is behind character at the same frame, those clips won’t blend well and you’ll get tangled feet.

BY the way, just in case: in all clips body should face the same direction. So, in your “run right” clip character will strafe-run to the right by sidestepping while still looking forward. Without turning into that direction with the entire body.

I have 17 clips and they are timed so that the footsteps match up. But there always seems to be an adjacent pair that won’t overlap without issues. The issue is the side movement (left or right) changing to a diagonal and back. The hips end up facing the wrong way. The issue can be avoided by keeping the hips square and facing forward. But it makes for some odd looking movement – especially when moving sideways since the feet hit each other. If I turn the hips to accommodate sideways movement, the hips are then facing the wrong way to blend with one of the adjacent diagonals.

If you’re rotating hips then I think this kind of situation can only be solved using some sort of IK system for feet, where blendspace animates ik target for legs and transform for thigh and knee bones is calculated based on IK target position.
Not sure how you could do that with UE4 (might not be a builtin way to do that), because I haven’t had a chance to play with builtin ik properly.

Without IK-based leg movement you’ll have to keep hip rotation similar, because, well, legs are parented to hips, and by rotating hips you’ll end up moving legs.

Also, check out mixamo locomotion animations and builtin unreal blendspaces to see how those work.

If you don’t set your “Target Weight Interpolation Speed” to something besides zero the placed clips will not ease in to and out of one clip to another. (you should find this setting in the blend space)

You can also add a per bone blend to add a easement to the upper torso under the setting. Rotation in blend space seems to work for me.