I’d like to introduce my plugin project ‘Motion Symphony’, a full suite of motion matching & pose matching tools for Unreal Engine 4. This is not a copy paste of previous attempts. It is my own original implementation based on my previous work on ‘Motion Matching for Unity’](Motion Matching for Unity: Samurai Trailer - YouTube).
‘Motion Symphony’ is intended to be more than continuous motion matching. It is a suite of tools to use in Animation Blueprints relating to the concepts of matching poses and motion. It isn’t intended to take over your character or be a rigid black box. It is designed to be flexible and extend your capability to make realistic character animations and balance that with gameplay responsiveness.
This is still early in development so there is not too much more I can say regarding final feature set. However, I now have the ‘core’ implemented (ported) to a point where it is worth showing. F.A.Q](Motion Symphony [UE4] - F.A.Q - Google Docs)
*Again please note that this is still an early implementation, in particular the root motion here isn’t fully implemented yet.
**All animations shown here and more will come packaged with the asset when released
Wow, i’m really eager to see what the final result will be. Will you include motion captured animations in your UE4 asset as well? (you seem to have added it to later version in the unity asset store)
And I wonder how well this works in tandem with Kubolds animations, as they are motion captured as well But I figure one might need some additional animations to fill in some gaps…
But seriously, keep this going, I’m definitely digging this.
Edit: This sounds like this will be even more capable and feature rich than your Unity asset, am I right?
Yes all the same mocap animations that I’ve included in the Unity version will come packaged with Motion Symphony on release day.
Regarding Kubolds animations, they are originally captured from mocap but are cut into individual clips. This isn’t particularly ideal for motion matching, however, before I had mocap capability I was developing ‘Motion Matching for Unity’ and testing only with Kubolds ‘Movement Anim Set Pro’. They do work but it’s just not possible to be as good as the full mocap just because of the sheer coverage of animation.
This is why I’m doing more than just continuous motion matching. I don’t believe that continuous motion matching is ideal for cut clip users, so to specifically target that I’m going to make pose matching nodes which can be used to pick animations and the point in the animation to start for transitions in a state machine. Essentially you still structure your state graph but it becomes much simpler with less states and higher quality because you won’t have to worry about picking say the left or right footed version of an animation. If done right you could have every RunStart (in all directions) animations in a single state and let the special node pick which one it should use and where to start. That’s the goal at least for cut clip support.
That’s correct. UE4’s animation system is a lot better and more flexible than Unity’s so I will be able to do a lot more with it.
All nodes that come with Motion Symphony will output a pose based on the source animations and motion matching algorithm.
Generally, post process IK and procedural pose adjustment simply operate on these poses and don’t care how they were made. Therefore, I don’t foresee any issues with any IK solutions. Motion Symphony is designed to be self contained and not adversely affect other systems in the Animation Blueprint Space.
Just curious if you have a vague eta for this one? I bought a MM plugin already and it as you described, a rigid black box. Anyway thanks for the effort!
I don’t have an ETA but I do have a “vague ETA” :). My goal is to get this out end of 2020 / beginning of 2021. However, this is just my goal. I won’t be releasing it at that point in time if it’s not ready.
There may be a staggered release though with the more complex motion matching nodes coming out later. I haven’t really decided on this just yet.
This node is placed near the end of your animation graph (before IK or procedural animation). It’s job is to continually record the character’s current pose. Motion Symphony nodes upstream of the ‘Motion Recorder’ node can (and will automatically) request the ‘current pose’ from the Motion Recorder to match against.
Sounds boring right… WRONG!
The motion recorder is the backbone of a production ready motion / pose matching system. Without it, motion matching nodes can only match within their own data and pose matching is impossible. Essentially the ‘Motion Recorder’ allows all motion matching and pose matching nodes to break free from themselves and match between each other even in different states. Additionally, it means that Motion Symphony nodes can match from non-mosymph nodes and this increases it’s flexibility massively.
Enables continuous matching between states
Enables matching from (but not to) non MoSymph nodes
There are three more animation nodes that I am working on which I will showcase soon. These will all work together to make a dynamic production ready motion matching solution, instead of the horrid black box which motion matching often turns out to be.
I am considering this. However, Blendspaces do make it tricky when it comes to pose matching because they add a lot of data. I did implement a form of blend spaces in Motion Matching in my Unity version so I will probably do a similar thing for Motion Symphony. As for the pose matching etc. nodes I will probably keep them sequences for now with a few to advanced them further in the future.
I’m new to Unreal and was looking for something just like this. It looks incredible and I love the modular approach, and that it doesn’t require full mocap animations.
Great work and looking forward to seeing how it progresses!