Motion Matching - My Thoughts [UE5]

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
well hello and welcome back to another video today we're going to be looking at the new motion matching example project I've just been asked a little bit what are my thoughts on motion matching you know I just kind of wanted to go over the the project itself and just kind of give my thoughts on like how feasible it is so I've booted up the project um I haven't changed any of the actual animation settings I have disabled nanite and the Lumen cuz as you guys know they just chug they're just big chug arenos and as you can see it looks absolutely fantastic and despite any kind of criticisms or like negativity that might occur in this video the end result is extremely fluid you know there's very minimal foot sliding all of it is capsule based movement so it isn't root motion movement you can see if I go show Collision you can see that our capsule it's just moving like a normal capsule does that's fantastic cuz it means that it's super responsive it means we can add you know physical forces to it and all that kind of stuff basically it looks really good you know when we're turning around and like doing these kind of arcs and stuff there's just like it just looks incredible all of the sort of contextual you know jumping and stuff is really solid so with my sort of you know initial Impressions on like the the end result I sort of wanted to uh I've got a few like little gripes honestly so this was sort of marketed as you get 500 like free animations it's like you know this huge library of of animations that you get access to in this example project and while that isn't necessarily untrue the animations are like like such Classics as M neutral jump B land stand Heavy R foot we've got uh M neutral jump F off walk aloot we also have M neutral jump F Land Run heavy L foot uh and you can see that the list just goes on and on and on and this is sort of the case for like a lot of these animations they're all extreme specific and they're kind of only usable in you know in motion matching the way that motion matching works this is like my very uh sort of Layman's understanding of it you essentially predict the trajectory of the character by using you know their current rotation and acceleration and velocity and all that kind of stuff and you predict ahead and then basically for each animation they have a very particular curve assigned to them so you know for example this one here it is moving left while facing forward it slows down and continues facing forward but then starts moving backwards and that's sort of the the curve that is assigned to this animation and so as we're moving around the system is like constantly evaluating okay okay where do I go from here and given my current pose where is the most similar part of this that I can like blend into and blah blah blah blah blah blah blah so it's kind of like a like a like a six-dimensional blend space in that regard obviously with this much data holy with this much data you know it's going to look good regardless of like you know like I'm I'm going forward but then I turn this way way but like face backwards so like if I do this and I do this then like it just works cuz there's like every single possible transition you know go this way turn this way but go backwards it's just like overall really solid and looks amazing but the the 500 advertised animations it's not like we're getting you know a bunch of different run animations a bunch of different walk walking animations and some like jump and you know midair loops and all that kind of stuff it's very much for this specific implementation and this specific style now I don't actually know how a system like this goes about adding different kind of styles of character so for example if we wanted a like a feminine character gate do we have to you know go to our animation software and like tweak every single one of these animations to you know if we wanted to do something simple like just bring the elbows in and just kind of like make the the hands kind of tilt outwards a bit do we have to do that for every single animation I mean we could use an additive on top of it but then we're just adjusting the pose not the actual motion so we wanted the arms to be a little bit more snappier it's like we just have so much data to kind of with let's talk about performance so I feel like this kind of system is probably best used for something like alen wake or hellblade maybe like God of War where you've got like you know a few characters on screen because it is a little bit of a of a chug Fest obviously at the moment you know with nanite and Lumen disabled I'm getting 120 FPS if we were to grab 50 characters these are all using the motion matching um as you can probably tell you know they all look fantastic uh I'm just inputting uh like a random velocity over time into these guys so they're not actually pathing they're just you know adding input straight into them you can see we're kind of chugging we're like 23 FPS it's you know it's not pretty if we go to stat unit um you can see that yes all this is coming from the game thread which is where animation is running um I believe at the moment motion matching isn't multi-threaded which may help in the future possibly so with these 50 characters if we change them to use a just a much simpler anim BP you know using our traditional sort of just blend space blend space based animation blueprint so now all of the characters just using regular blend space you can see they're a little bit shitty cuz I've literally just made it as simple as possible but we're getting a nice you know 40 45 FPS um which again doesn't sound like much but it is double what we had earlier and you know this is with no animation budgeting or anything like that now keep in mind you could at a distance swap out a motion match character for just a regular like traditional blend spaced character that's definitely something you could and probably should do on average I'd say this is maybe like 50 to 70% more expensive than just like traditional animation now whether you believe that is best for your project that's completely up to you the two times cost makes it look three times better than it's like it's a it's a net positive you know if if you're making a game like uh you know like a Diablo clone or something like that and they're going to be on screen for a second then you're probably better off just using a regular blend spaced blend spaced an MVP or I mean at that point you'd probably be looking into like animation instancing and that kind of stuff there small animation samples for NPC algor doesn't take as long to pass through the best choice from what I saw they use different databases to reduce vality at a distance but it's undeniably less performant than layered native thread safe setup so maybe in the future this will be able to be parallelized but at the moment it's you know it kind of chugs a bit but that isn't to say that it isn't extremely impressive uh I just wouldn't recommend using it at scale like this all right now the last little thing I wanted to talk about is just like the the complexity of the setup and all of the animation authoring that potentially is required so if we go to to our can see we just have all of these data tables of like the animations and their curves and their blah blah blah blah blah you know if we go to like uh the the dense pose search we have the stand Idols list of things that have their own things movement mode stance movement State gate and then if we actually go into them where whatever they are databases d uh lands heavy we've got like all these these actually show the uh the trajectories that you know they would be used for uh the schema is like jump which like just has all this stuff and it's just like bro uh it's just it's yeah it's a lot so you look at the one that I set up and it's just here's here it is I want to DIY um it's just this blend space you know walk forward and run and Jog and whatever it's this is like the simplest one I could make in this session with the animations and then the animation blueprint is just uh blend space into the output post and so you know it's like this versus the other thing I know that I can't be bothered and I feel like a lot of other people probably won't bother I can see this becoming the the next ALS V4 I don't I don't want to come across as a douchebag in the video basically if you take a lot of inspiration from classics like only up and alt f4 and you know those kind of games this is the perfect stter temp plate for you so I can see in you know the near future in the next few months we're going to get a few games that have really good looking Locomotion and not much else but I can't imagine anyone at least like a solo Indie developer authoring all these animations for potentially just one character or one character type or one Locomotion style unless they just took all of these animations and used that as like a basis so overall I do think the end result looks fantastic the best Locomotion in a video game to date uh in terms of like you know the seamlessness and all that kind of stuff I'll be keeping an eye out to see how it goes with like layering different poses you know different weapons different character types different character types with different weapons whether it has to all be completely additive or there's some kind of smart way to adjust you know the timings and all that kind of stuff the tldr or the tldw is everything comes with a price the better you want your game to look the more it's going to cost to run and that goes for animation that goes for graphics that goes for you know gameplay depth it goes for basically everything everything has a tradeoff and it's up to you and the specifics of your project to determine whether those trade-offs suit what you're going for so I can imagine a lot of AAA Studios opting for this approach because I have the resources to you know go in deep but that is my little surface skim of the the motion matching example project I do love it but probably not for me and there definitely are some animations in this big library that are usable outside of the motion matching context but it's definitely not you know the the 500 that was advertised so it's a bit cheeky but uh you know that's that's epic games for you with that if you enjoyed this video make sure that you've uh you've liked and subscribed and hit the you know the Ding and yeah but if you do want to support monetarily you can do so for as little as $1 per month through the patreon which is linked below if you do need any help with Unreal Engine related things you can join our Discord server which is also and with that we say goodbye goodbye [Music]
Info
Channel: PrismaticaDev
Views: 11,163
Rating: undefined out of 5
Keywords: unreal engine, ue5, motion matching, animation, game animation, locomotion, ue5 locomotion, ue5 animation, ue5 control rig, ue5 character
Id: 6mizhHhOiHA
Channel Id: undefined
Length: 14min 28sec (868 seconds)
Published: Tue Jun 18 2024
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.