Animating in Unreal Engine 5.1 | Unreal Fest 2022

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
Hello. Thank you for coming to our Animating in Unreal Engine 5.1 talk. We have got about 52 minutes of content and 49 minutes to get through it. So there probably won't be any Q&A, but we will be at the Dev Hub tomorrow and Thursday if you want to ask questions. I am Tony Bowren a solution architect. I work with external companies and help their animation experience in Unreal be positive. And this is Frederick Nielsen. He is our lead technical animator. He works internally to try to make the tools for the animation experience better. A lot of the stuff he has done in the last few months is brought into 5.1, so today we're going to show you a lot of those tools. There's going to be three demos. We're going to start with a box. He's going to animate a box, which will be very exciting because this is a special box. You will want to get this rig. Jeremie Passerin created this control rig box. It's a cardboard box, and you'll see him animate this. We're going to do a demo showing what you can do with animated content sequences and how you can work with those. And then the third demo is going to be about the new constraint system in Sequencer, which is going to allow you to constrain any object to any other control or object. So very excited about this. But the first thing you know is if you're use Unreal, there's always secret check boxes inside of properties panels and project settings. And so Fred's going to show you some of the new favorite check boxes to make your environment the best, and also his favorite hotkeys. So Fred, take it away. Thank you, Tony. So yeah, so as I'm-- I'm new to Epic. I've only been here for seven months or so. But as I was onboarding myself and learning best practices and figuring things out, I've been keeping track of just things that I found made the experience more comfortable or settings. We'll release this. We will send links when we put the video out. So this will be either on the Dev Hub, we will release this big, long PDF. I'm going to go through every line here. No, kidding. I'm not. I'm going to go through just a few of the main ones, like my favorites of, you should do this when you get started just to be comfortable. OK. So instead of going through this boring list, let's just go ahead and do them in the engine. So here we have the Unreal Engine. I'm not going to go into too much detail other than I want to animate something. What should I do? So we hop into the Editor Preferences. We're going to set just a couple of them. I am very used to the middle mouse button panning in the direction I move it. Some people may or may not. I turn this on, it means it moves like Maya or other software that might be used to. The other thing that is off by default is, if I type rotate up here, the arc ball is turned off and the screen space rotation is turned off. I'd love to have them on by default, but for now, they're off. They're there, you just have to enable them. And the third one is-- Oh, no, there's a couple of really cool new ones that we added. If I type marquee, this was a high request of mine when I first started. Is I needed to turn the camera movement off for the left mouse button. So now when you're animating, you can make that left mouse button actually do a marquee select. You'll notice here not every viewport allows it yet, but maybe at some point it'll be an option that works globally. So at the very least, you'll want the level sequence editor set that way. OK. Oh, and hotkeys. Sorry, there's one more. I have lots of hotkeys, but I'm not going to go through them all. But if you do a search for parentheses viewport, these are new-- these are all new hotkeys that we added. So they're all-- you can see they're all related to animating. So jumping to the beginning of end of your shot. Scrubbing time, that's a new one we added. If you hold down B, you can actually scrub time in the viewport. Stepping frame, stepping keys, things that you want to do. And I recommend you just find-- you can see these are the ones I'm using right now. You don't have to use them. I recommend somewhere where your hand is that you can be comfortable. Somewhere close to where your hand is naturally. So if you're animating with a mouse and keyboard or Cintiq and something else, just put them in places that you can access them comfortably. OK. That's it for hotkeys and preferences. There's obviously a lot more in that document. You guys can go through them, pick and choose what you like, they're just recommendations. OK. So let's hop into some quick just shot setup. I want to set up a little scene that I can animate here. So I'm going to just go through one way to do it. There's many ways to set up shots and animate. I'm just going to show you a way that we use often internally, where we build a world and then we build a level sequence and then we kind of-- and then it becomes a two stage process to open your scene. You load your world then you load your level sequence. So I'm just going to show how to set that up. So I have this empty world. I'm just going to add a couple of cubes. So I add one here. I'm going to copy and paste it. I'm just going to scale them up, make them a little bigger. Oops! Too far away. I'll come back. I'm just going to move this guy down a little bit just to create something a little more interesting. I'm going to hide these lights and just add a couple of lights, because why not. We can do such things. OK. Real time lighting, Woo-hoo! So cool. OK. And because I like to make it look a little bit prettier, I'm just going to do some little bit of color. OK. A little warm, a little cool. OK, so now we have our world. Let's say-- obviously I can crank these up or down, whatever. Now we want to add a character. So now I have my world. Let's say this is my world without the characters. You have a lot of flexibility, I'm not going to go too deep into it. I'm going to save this world. I'm going to-- I'm going to do it in my developer folder, and I have one here. I'm just going to write over this one. So I'm just going to call it my world. You can call it whatever you want. So now, I have this. Oh, my other lights came on. Cool. OK, so now what I'm going to do is go back to that same Content Browser folder, here, and I'm going to make a level sequence. I already have one here, I'm going to make a new one. So I just right click in an empty area, I say cinematics, and I say the level sequence. I'll call this animation two. And it's empty. I just made an empty level sequence. But if I double click it, you'll see now my Sequencer comes up. So the way this is set up is I have a separate world and I have a separate animation sequence. So that's why I mentioned it's a two stage. If you want to bring this up again, you load your world, you load your level sequence. You can nest them together, you can do all sorts of really cool crazy stuff. I'm sure we'll do more talks in the future about that stuff. Add the character. So I have my sequence, oops! Content Browser, cardboard box, where is the rigs? Oops, props. Cardboard box. OK, so I can just drag this into my scene. Now you see I have this fun little Epic Games cardboard box. What's in the box? OK. You also see it got added to my Sequencer. I'm going to turn this off right now. This Control Rig controls-- these are track filters. I'm going to get back to them. But if I turn this off, you'll notice that a few more things appear here, so animation sequences and transforms. By default, they'll be off. So just if you need to get to them. OK. I'm just going to save this level sequence because now it's created, and I'm going to save my map. OK. So when you're animating, you're going to want to be in animation mode. Where is my animation mode? That's over here. So when you're in animation mode, a few important windows get added. So you have your-- this is your main animation window. These are where our tools and plugins and some options are. Pose, Library, Tween tools, Snapper, Trails, Temporary pivot. And also down here, your space switching and your constraints. Might be a little hard to see for you in the back. You have spaces and constraints. So this is an important one obviously, because that's how you get to all your tools and stuff. Oops. Where did you go? I'm sorry. Another important one is Anim details. This is-- why can't I grab that edge? What is wrong? OK. So the outliner, there's an Anim outliner down here, which is really just your controls in your rig. So you could use this as a selection set if you like. The Anim details is very similar to the details, but with more information that's relevant to the controls and the rig that you're touching. So in this case, you can just see the transforms of each of these controls they select them in the viewport. So let's just go over the rig really quick. They're-- sorry. There's a couple more settings I want to change. I'm going to change my frame rate because I'm used to 24 frames per second. I'm also going to turn off - this is a new option as well - auto expand nodes on selection. All that means is, I think by default, it's on. And what will happen is, every time I make a selection change, my Sequencer opens up again. So any of you who've experimented with animating in the engine, this might have been annoyance. It was one for me until we added this option. You'll see it keeps opening that up. So if you'd like to have a nice condensed timeline, you're going to want to turn that off. And you can hotkey it, you can turn it on and off as you wish. So now, when I make selection changes, it no longer opens. So you can kind of stay more condensed and clean. And then the third one is auto key. That exists right here. Let me do this. It's off by default. You're going to turn that on. What that means is if you have a pose on a character, you go to another frame and you change something, it'll add a keyframe for you. If that's off, it won't. So if you pose a bunch of things and you haven't hit set key, then you'll lose that pose. So just know that. That is another thing you're going want to turn on. OK. Yeah, so the rig. Really quick, there's a few simple controls, but they're really cool. I have the global controller here, I have a body, which is a center of mass control. I have some squash and stretch that we built into this so you can kind of just manipulate a couple of controls and get really cool squash and stretchy kind of funness. You have a middle one, a top one and a bottom one. So you can kind of push on any direction. I can rotate these flaps. So I'm just going to-- I'm just going to set a keyframe on the whole character really quick. Do this. And let's just pose these guys. Do this. Change the space. So I can just close the box, and then grab these two guys, and close the box a little bit more. OK. So we have that. So we have our first pose. OK. Now, let's just create a little animation. I want to have them rock back, squash, stretch, and jump and land on that platform. So how could I do that? I can do that in many ways. I can just animate this thing, set a keyframe, rotate it, translate it up so I can kind of fake the feel of that pivot. But that's a lot of manual work. Every time you want to rock up on an edge, you'd have to do that. So I could use the temporary pivot tool. And that's something that was added I think in the late fours or early 5.0. I don't remember exactly. That's-- Jeremiah's here, but. Edit mode and pose mode. So if you go edit mode, you can move this thing. So I could just move this pivot to here. And then I go to pose mode, and now you'll see that if I do the same thing, you'll see-- at least now it's pivoting from there. But if I continue forward and now I go down here, well, now I have to move the pivot again to here. And I can continue to animate like this. So every time you want to rock up on something, you have to move this pivot. I'm going to show you a third way. So I was going to turn something off here. A third way to do it, which is, we are leveraging a new rig feature, Control Rig feature in 5.1. And these things here, they could look any which way the rigger set them up, but they're called proxy controls. And these are not things that you keyframe, these are things that drive values in other controls. So you can think of this as like a cheat code for the animators, because all that stuff I showed you manually, we've specifically laid out pivots along this box on every edge, every corner, even up on the flaps, and these are pivots that this control is looking for. So if I instead of posing it all manually, I go here and I just start rotating this thing, you'll notice that it automatically feels like it's colliding with the ground on all sides. So I can rock up here, I can rock up this way, I can even swing around now that that is-- so it's dynamically changing pivots for you. But just keep in mind that this is not actually-- it's not actually keying, or it's not being keyframed, right? It's only being-- it's throwing values into that comm controller. Both translation values and rotation values. So let's do that same animation real quick. So I select this, it appears. If I can select it like this, and I go a few frames later and I rock it back this way. If you look at the Anim details right here, you can see as I'm manipulating this thing, it's feeding values into the translation and the rotation. So just keep that in mind. It's still feeding values into that same control. So now I can rock up here, I can rock up a little further, I can come down. Now, when I switch pivots, I'm going to want to have a keyframe there because that's where it's going to then switch. Otherwise, it would just kind of blend through the ground. So I keep going. Now I pivot up here, and now maybe from here. Let's just do a jump real quick. So to jump up in the air and then a landing. Sorry. As you all know, animation is slow. And I'm not going to be able to get super far with this. But I'll see how far we can get. OK. So now we have some super basic animation of this, just going really slowly and not animating very nicely. The nice thing is, because these values were all put on this body controller, I could use this pivot control-- or I don't have to. If I'm up in the air here, like this frame, I can just now manipulate this thing however I want because it's the same controls. That's where those controls were just going. Or the values are all going there. And I can just come down here, and now here, when I'm hitting a ground again, I can say, OK, well, now I want to use that pivot again because what if I want to have them land on the-- oops, sorry. Land on the edge, and then a few frames later, just kind of settle down again, right? So let's just take a look at that. Again, super basic. But I just want to show you, now, with rough poses, rough timing, what do I do now if I want to edit some of this timing? You have many ways to do that. I can just go and grab these keys in the Sequencer to kind of move them around. So I sped that one up, maybe I want to speed this one up. Maybe I want to grab all these keyframes. I can select them like this and just slide them around just like you would any other timeline. Speed it up. Obviously this jump is way too slow. I'm going to change this, faster. So we have that. There's also a new feature that was added in 5.1. These things are called layer bars. So above everything that you're animating, you'll see this new bar here. I can grab this bar and just shift all the timing. I can also grab the edge of it, and I can scale and-- like scale the animation. So speed it up. If it's shorter, it's faster, if it's longer, it's slower. So you can do that. The other cool thing is if you made a folder in your Sequencer and you put many objects in there, you'll get a timing bar above that. So you can shift timing on many objects, including cameras, lights, props, whatever you're doing. As long as they're in a folder, you can re-time them all together. Yep. OK. So curve editor, obviously is here. Very used in animation. There's lots of cool tools. It's been in there a while, we made some tweaks to it in 5.1. Tween tool is a tool that many of you probably are familiar with in other tools. We had it here in 5.0, maybe before then. We added a few new ones. So tween was one that was there before. For those of you who are not familiar with what that is, if I'm up here between two poses and I use this-- I just have this control selected, I use that. Oops, let me do it on this guy. If I use this tween tool, it blends between the previous pose and the next pose. So you can use this as a breakdown tool to figure out where should in between be. So we pushed tween down the list and we made blend neighbor be the default. And the reason is what blend neighbor does, so tween would start at the interpolated value and then ease to the key before and after. Blend would start at the value where you currently are and blend to the pose before and blend to the pose after. So here, I can blend to this pose or I can blend to this pose. So you have a lot of flexibility on how you're manipulating these characters throughout space. And the other cool thing, so prior to 5.1, it only worked on selected controls in the viewport. Now it also works in the curve editor on selected keys. So I can choose very specific keys and use that same slider on-- if you look at what's happening in the curve editor here, it's only doing it to those two keys that I've selected. You can even do it across multiple keys. So I can grab all these keyframes and do it here. And then the third one we added is push pull. So blend neighbor and push pull, those are the new ones. They're very cool. And just having the ability to do in the curve editor is very, very useful. Next demo. OK. Tony's speeding me up. I'm going too slow. All right. Let's talk about animation sequences and how you can use them really quick. So I'm going to bring in a new character, the mannequin. Wherever you are. And this is just a Control Rig on the mannequin character. Standard biped MetaHuman rig. In here, you can kind of animate, manipulate it. So control rigs are great. They're really cool. But what's also really cool is that you don't need to keep them around if you're not using them. So in this case, I'm not using this Control Rig, so I'm going to just delete it. So I didn't use it. I didn't put any poses in there, it doesn't matter, I just delete it. I can always bring it back. That's what's really powerful about these guys. Instead, I'm going to use this lane here called animation. I'm just going to put in a couple of-- turn this guy off. I'm going to put in a couple of poses, a couple of clips that I can blend together and just show you the power of how you can import motion from anywhere, you could bake it to a Control Rig, then you could manipulate it and you could bake it back to an animation sequence if you want. So I click here on this animation section. I say animation, I do a search for any animations that are compatible. I have some idols here, I have some walks. So you see now I just put a quick animation here. It's just a clip. I can extend it, I can shorten it. Let's say I'm just going to do less frames. And then here, I'm going to add a walk. Let's do that. And now you see I can actually butt them right up against each other, which will just mean that it snaps from one animation to another. I can also blend them by just dragging them across. And you'll see one will blend down and the next will blend up. So you can blend clips. So any cycles you've set up and you have it compatible, you can just use them and blend them together like this. If I want them to keep walking, I can just extend this, and that walk will just keep looping. OK? So now how do I edit on top of this? I want to animate this guy now, but now it's bake data. Like an animation sequence is keys on every frame, linear on every bone, right? There's no IK, it's just FK, joint data. I want to bake this to a Control Rig. So how do I do that? I right click on the asset, I say bake to Control Rig. You get the compatible control rigs here. I'm going to choose the mannequin body. There's a couple of options here that I'm just going to ignore and say Create. So now what you'll notice is it grayed out my animation sequences. They basically were just disabled here, the active. And now you'll see a Control Rig was added. And now that same animation now is on the Control Rig. We basically transferred the animation from the baked data to the Control Rig. So really easy to bring things in and edit them. I could hop right into that in the curve editor if I wanted to. And say I wanted to make the head kind of look left and right, I could hop into the curve editor if I wanted to look through the spaghetti mess of raw keyframes, and start deleting keys and manipulating this data. But I don't have to do that in this case, because I just want to animate on top of this. So what I can do is, similar to an animation layer, we have this thing called-- we have these things called sections. So on the Control Rig, if I click section here, I can say absolute or additive. I'm going to pick additive. And you see now it basically added a whole other rig here. So there's a second Control Rig here. But if I look over here, this says additive. So it's still the same animation because I haven't added anything. I haven't added any poses to that second Control Rig. It's a full rig. It's a full set of those controls, again, a second time. The cool thing, though, is now I can click here, and now I don't have to look at all those keyframes because I have no keyframes. So I'm just going to set a keyframe on the head, I'm going to just animate the head looking a little bit to the side. Animate a little bit more. So this is what I mean that it's animation layers. It really is, right? And now I can go over here, look this way. I can have him come back to the beginning. And now you'll see the same animations there, all the little bounce from the original animation still there. I've just added animation on top of it. I could even go to the first frame and change his posture really quick. So say I just want to pull his arms out, maybe bend his elbows a little bit. Set key frames. And maybe just make him-- lean him forward a little bit. So I'm just adding this to that first frame. So now he walks like some weird kind of C-3PO character. So I've just adjusted the pose in the first frame. Because it's additive, it gets added to all the keyframes through time. Oh, yes, and the IK is still active, which is really cool. Because-- so if I manipulate this, you have full access to everything that was in the rig, just like on another layer. So great. Now I've done my tweaks and now, say, you know what, I want to add a couple of runs or more clips to it. How do I get it back to bake data? Again, super simple. I'm just going to save this just in case. Yes. Sorry, Tony is remind me. I'm going to add some forward movement to him, just, again, on that layer before I bake it down. So I click-- let's see. He starts walking here. So I'm just going to set a keyframe on his global, and then I'm just going to move him from about here. I'm just going to do this super rough. To here. So now he's going to start moving forward. He's moving too slow. So what do I do? I can go to the curve editor, I can look at-- I'm just going to go here. This is a really important track filter. I don't know how much time I'll have to get into this. Selected Control Rig controls. What this does is it filters down and only shows you, in the Sequencer, what you have selected. So now as I go to different controls, the only key frames and the only controls that are showing up here are what I've selected. So in something like Maya, this is what the timeline would be doing. If you pick the head, it only has three keyframes. That's what you would see. You pick the body, if you pick everything, it would be additive, it would show you all the keyframes of the objects you have selected. OK. So I'm going to go back to this global, which is what I'm after here. I'm going to look at his Y translation because we are Z up, we are not Y up. Just keep that in mind. And I'm just going to adjust this last pose. I'm going to make it linear. I can change my curve types here of my keys just because I know that he's going to hit a constant speed at some point. And then now I can just grab this keyframe while it's playing even. I can just adjust till the feet-- [INAUDIBLE] ready. Now the feet kind of feel locked at some point. That's fine. I'm not going to go much deeper into that. What am I missing here? Oh, collapsing. OK. So now I have my two layers. I've added my changes on top. Now, what if I want to merge these layers back together into just one lane, how do you do that? So it's a little tricky to find. If I right click here, I don't see it, if I right click here, I don't see it. But if I right click over here in this blue area outside of where my keyframes are, there is a collapse all sections. So you see it says animation layers, collapse all sections. If I do that, it now has merged it all back down to one Control Rig. So you see now it's the same animation. Looks exactly the same. Everything I did, the head turns, everything is there. And it's all baked down to one Control Rig. Now, how do I bake it back down to an animation sequence, because, say I do want to add a run or something? So I can right click on the asset up here and I say, bake animation sequence. So we have baked Control Rig which was that way, and we also have bake animation sequence which is back to the other way, right? So if you wanted to export this out as an FPX or something, you would bake it to an animation sequence and you could export it out, if you need it to go outside Unreal, that is. So bake animation sequence, I'm going to give it a folder pointed to my home directory, and say, baking demo five, whatever. OK. Again, you'll get some options here. Export options. This is just exported to a animation sequence. So you notice nothing changed. It didn't change anything for me. I'm still set up to be using this Control Rig. But here, again, now I can delete this Control Rig. I can delete these two old clips that I wasn't using. And now I can say, you know what, I want to bring that animation back, but instead of a Control Rig, I want to bring it back as an animation sequence that I just baked out. So I go back in here like I did before, and I do a search for-- where did it go? Bake demo-- where is it? Did I not do it? I don't know. Try-- Undo. Yes, you do undo. Let's do it one more time. Bake Demo export. One animation asset created. OK. I don't know what happened. Delete that. Oh! I don't know where it is. Well, it should be here. It's not. Live demos, these things happen. OK. I'll probably just move on. But that is how you do it. You can round-trip, you have a lot of flexibility. It should have showed up there. I'll try that next time. All right. Let's hop on to constraints, because these are cool and new. I think that covered all that stuff. Yeah. OK. So, constraints. This has been a very highly requested feature for many years now, I imagine. Attaching props to characters and doing things like that, you would have to do attach tracks, a whole bunch of blueprints and a lot of complexity involved in doing that stuff. We've added a full constraint system into the Unreal Engine that works with the Sequencer and the curved view. And it has full Python API that's exposed. So you can write tools around this if you need to. So let's do a quick explanation of the different constraints we've added. I'm going to add a couple of props just to showcase them on something simpler. So I have a cube, I have a cube. What if I want to animate these things with constraints? So I'm going to just-- first, I'm going to grab these two cubes. I'm going to just drag them into my Sequencer because I know that I want to animate them. So anything you need to animate, needs to be in your Sequencer. I think if you just add a keyframe, it'll just throw it into your Sequencer. But I'm just doing it manually. OK. So constraints, where are they? So first, you go back to that animation window over here, and you'll see here, we have spaces which are your space switching. I'm not going to get into it. It's been in there since 5.0. We haven't changed it. Constraints. If I click this little plus sign, Oh, you know what, let me move this window where you can see it a little better. Over here. If I click this plus sign, these are the available constraints. So we added translation constraints, orientation rotation constraints, scale, parent, and look at. Let's just talk through some of these. So I'm going to start with the parent constraints, one of the most basic. You pick your child, you go here, you choose parent, and now, you just pick your parent. So in your viewport, I say, I want that constrained to this. Now I've set up a constraint. So now you'll see that is constrained to this. So whenever I animate this parent, that-- oops! That object there will follow, which is super cool. And how is this represented in the Sequencer? On the child object, there is a lane under the transforms here that gets added called constraints. That wasn't there before I added a constraint. And in there, you can see the current state of that constraint. This is now active. From this frame is where I created the constraint, it's now active. What if I want to deactivate it on a frame? I can go to another frame, let me just actually animate this guy again. If I go to the middle here and I want to turn it off, you'll see, this means that it's active. If I click here, add an active keyframe, what you see happens is it shuts it off for you on this frame. So now it's constrained, now it's not constrained. You can see this parent now continues to move and it no longer manipulates the child. So you can animate them to your content however you want. OK. So let's just go over a couple other of the constraints. We have-- sorry, to get to the constraints, again, you have to select the child. That's how they would show up. You'll notice if I pick something else that has not been constrained, you won't see that list, because that's how you get to them. You pick the child, it'll show you the available parents that you've used for something. OK. So if I right click on the constraints, I can get to some options. We have things maintain offset, which if I turn that off, it'll snap to the joint, or to the control that you're constraining to. We felt the default behavior should be maintained. That offsets is usually what people do just to kind of-- they don't want their pose snapping somewhere else. So we turn them-- we have it turned off by default. There's another one here called dynamic offset, I'll come back to that. Scaling, scale propagation, on or off. Again, we turned that off by default. A couple other options you can bake your constraint, this and that. OK. So I'm just going to delete this constraint real quick. Sure. I deleted my object, not my constraint. Sorry. OK. So now I've deleted the constraint. I'm going to delete these keyframes. Let's just show a couple more-- I won't go into all of them too deep. But if I do a position constraint and I move to-- now, it only follows the position, but it does not follow rotation. If I do a-- I delete it. If I do a rotation constraint, it does not follow the translation, but it does follow the rotation, right? And the third thing just to show here is you can nest them, right? So I can say, I want a rotation constraint and a translation constraint. So now it moves with it, and it also rotates with it. But locally. So it's different from what it was before where it was a parent. Where it felt like it was just you parented these objects together. Now they're translating together and they're rotating together. So it's an important difference and it works like that in Maya as well. People take advantage of the fact that it does this and build tools around it. So that's why I wanted to bring that up. OK? So let's just create a constraint with this guy here. Where is my guy? Let's see. it's my Control Rig. I probably deleted it. I can just add my Control Rig back. Let's do that. Delete these keys. I don't need them. OK. So we have our character. Again, you can see I just right clicked and added the Control Rig back. It's super simple. And those-- anything that's compatible with the skeleton would have showed up in that list. So you need to kind of just set some things up. But once they're compatible, they work great. OK, ball in hand. Tony's telling me. Let's do this. So I'm going to grab a sphere, I'm going to put it near his hand. I'm going to move this into his hand or close to it. And I want to constrain it to his hand. So again, I just click here, I say parent, I say that controller. Now I've created a constraint. So now I can animate this guy moving his arm across his chest. It's now following. I can bring the other arm up like he wants to grab it. I pick the child, I turn it off, I say another constraint parent to the other hand. Now I've switched the constraint to the other hand, and now I can animate. So you see now I've transferred, brought it up here, grabbed it, moved it, and then I could drop it if I want, turn it off. And now if you want to look at-- what does this look like, again, in the Sequencer? Let's do this. So under that sphere, now we have constraints. Now there's two lanes, right? Because I have two parents. And you can see that on this frame it's showing off, on that frame it's turning on. Very cool. We've spent a lot of time on just this interface of being able to get to things. You can grab these things, you could re-time them here, the on and off points. You can delete them, you can bake them. So let's try to bake it here. This should work. I just right click and I say bake, and it baked now that translation part of it. And then now I should be able to bake the other one as well. And if all goes well, it didn't work. OK. There's a few issues we're still working through. It does work. I've done it. OK. So dynamic offset, what is that? What that means is you can animate something before you constrain it. And we actually move your key data into parent space, which is really cool. So if you've used the space switching at all, it is moving your key data into a different space. So the constraints work the same way. So you know what, I'm just going to clean this whole scene up because it's getting really busy. I'm just going to add the character back. And I'm going to actually add a second character here just for fun. Oh, I added three. Too many. Go away. OK. That's the ground. Oh, how many control rigs did I add? Go away. All right, where are you? I don't know what I did. I did something weird. Let's just go here. OK. Go here. Yeah. Well, yeah. OK. So I have these two guys. Let's just set up this dynamic offset really quick. Simple example. If I animated this guy, I just want to show that we don't lock our channels if dynamic offset is on. So I have this global control just moving up and down. Now, in a lot of applications, if I now create a constraint on that same control that I animated, it would either lock the channels, and it would no longer animate, or you'd have to bake it down to something else to get the data back to then put it back on. A lot of complicated workflows. So we worked on compensating those key frames for you. So I'm going to select that same thing I animated here. And I'm going to create a parent constraint to this other guy. So now if I play, you'll see that that same animation is still there, but the cool thing is that now it's also constrained. So it took all those key frames I did and just moved it up into that other space. It's really powerful because you can block something out without constraints, not even thinking about just roughing things in, and then you can start adding constraints after the fact. And the other cool thing is you can keep animating it. Even though it's now constrained, I can keep animating this child object. It's not locked. Notice that it's not. And those values now, they're not in world space. Those values are local space. They're in parent space. Like what is it parent you? So XYZ might mean something very different depending on what you've constrained it to. But it's really powerful because, you as a user, as an animator, you don't have to think about, Oh, I'm going to go up to another node that I have above that's not locked. I can just keep animating it. You have to set up sometimes complicated networks of settings just to kind of make it work there. OK. So let's do-- we have to change this up a little bit because that baking thing didn't work. So I'm going to add this Control Rig. I'm going to add a-- turn this off again. No, it's not there. I'm just going to put a walk on him, and delete the Control Rig. Because what I want to show you here is, so constraints work on objects, props, cameras, lights. Basically anything you can add to the Sequencer, you can constrain to. But I also want to show that you can constrain even to baked skeletal data, which is really cool. So I have this walk here. Again, I deleted the Control Rig on this guy, so it's just a-- so ignore the fact that he's not moving forward anymore. His head's not moving. That should have been when I've replaced with this. But so now we just have this walk here. I could just do this just to kind simulate that. OK, it's sliding. It doesn't really matter. Just have him walk really far. And that's just, because I need to change this. I just want to grab this key and make it all in here. OK. So now he's at least moving in a constant speed. The feet are still sliding a bit. OK. All right, ignore the feet sliding. Doesn't matter. You can fix that. So I'm just going to slow it down really quick. So there's many ways you can slow down animation. I'm going to go into the properties of that animation sequence and change the play rate. I'm going to make it like 0.1. So really slow. And the reason I'm going to do that is-- Oh, crap. That's right. Because it's so slow, he doesn't need to go so far. So I'm going to make him go a lot less. And look at that, the feet are almost locked. OK. So what I wanted to show here is this crazy little climbing demo. I'm going to make this guy really, really big. Like huge. And I'm going to add another Control Rig. I'm going to animate this guy like running towards his foot. So let's just say-- let's run over here. So again, I'm animating-- that big giant walking guy is just a baked animation sequence, and now I'm using a Control Rig right next to it. So he's going to run up. I'm not going to spend a lot of time on this because-- OK. Where are you? OK. This guy. Why is my controller even down here. OK. Sorry. Oh, that's why. Sorry. I animated the transform instead of the global controller, which is explain it. OK. So he's just going to run up to the foot, and I'm going to have him jump on and land on that foot. Really rough and dirty here. So he runs up and he-- lets say he just jumps up in his foot. Really rough, like that. Now how do I animate this, or how do I constrain to a bone? So just like before, I can go here on this frame. This is a frame only connected to the foot. So I have my child selected, I go constraint. Now, I don't have any controls to select, so how do I get to the bones? You just click on the mesh, and your list of all the bones will appear. So I do a search for foot. This is the right foot. So now it attaches itself to the right foot. Next thing I'm going to do really quick is I'm going to add a quick camera. Create a camera here like this. Make sure it's in my Sequencer. And you know what, I just want to constrain this camera. Point-- constrain this camera to this character. So now, you'll see the camera follows him, he now gets constrained up onto the foot. Let's see. Let's just-- and then now because-- even though it's constrained, like I said before, I can just keep animating this guy. And because the camera's constrained positionally to the character, it keeps moving with him. So like this. He stands up, maybe he is going to stand up fully, maybe then he's going to jump up again towards the leg or wherever the leg is, over here. And you're going to grab that leg. And now I want to do the change again, so I deactivate this one. I create another parent constraint to the bone. I say calf, right calf. So now I was on the foot, I go up here, I stand up, and I jump up to the leg. Now I'm constrained to the leg. So yeah, you have a lot of flexibility here to kind of-- we're good with time? OK. Yeah, so a lot of flexibility. You guys can play with these. They're new. This is version one. We're really excited about what the team was able to accomplish in very short time period. All this stuff went in just the last six months. A lot of stuff was in there, we've just been tuning things and trying to make it more of an interface that animators are going to want to come and play around with. Like a nice little playground for animators.
Info
Channel: Unreal Engine
Views: 180,825
Rating: undefined out of 5
Keywords: Unreal Engine, Epic Games, UE4, Unreal, Game Engine, Game Dev, Game Development
Id: FgJ1stTScxI
Channel Id: undefined
Length: 43min 49sec (2629 seconds)
Published: Mon Oct 31 2022
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.