Who in the audience is a rigger or technical animator? OK. OK, pretty good. Pretty good, but not most. So let's just go with that. OK, so not many of you of you have riggers Why is this? I would say, when I asked the question, maybe a tenth of you raised your hand. So a good rigger is hard to find. And so why is this? Because Rigging is hard. I think that's-- Rigging is a very hard task. But it doesn't have to be. So Rigging can be a powerful tool in Unreal Engine. So I'm Chase Cooper. I work on the Product team on the Unreal Engine dev team for Rigging technology. And quick backstory, when I was young, I was fascinated with Terminator 2 and Jurassic park. What little boy doesn't like CG dinosaurs? I think I saw that film five times in the theater. And so movies and Animation were magic to me. And at the same time, I discovered computer games. And to my parents' dismay, I started taking apart their computer, to shove as much RAM into it as possible, to run Unreal, the game at the highest fidelity possible. So the rest is history. I've spent the last two decades building digital characters for computer Animation. The first part of my career was spent in visual effects and Animation, industrial light and magic, where I worked on films such as Rango, built Hulk for The Avengers, and a little movie called Star Wars. So now I'm here at Epic. I've been here for about 4 and 1/2 years. I started out on the Fortnite dev team for Fortnite chapters 1 and 2, building character technology. And now I'm here, on the Unreal Engine team. And I'm going to show you some really cool stuff today. So Rigging doesn't have to be hard. A good rig goes a long way, not only in improving Animation, but it can also save you a lot of time. Rigging, in the end, is really about creating a believable character. And a big problem with current character Animation Rigging tools is that you need an enormous amount of knowledge to build a digital character. What if you don't have to learn and jump between three different software programs just to rename a single bone in Unreal? And this is one of the problems we were trying to fix. So let's talk about Control Rig. What is Control Rig? Control Rig is our procedural Rigging framework in Unreal Engine. It uses its own lightweight VM-- and we call that the rig VM. And you can create runtime and Animation rigs by connecting nodes together. These nodes, we call rig units. And the framework is available in Unreal Engine and also UEFN. Control Rig is utilized by many of our products, here at Epic Games. So if anyone here has played a single match of Fortnite, you have interfaced with Control Rig. The technical Animation team at Epic utilizes Control Rig for animating hair and costumes. They also utilize Control Rig for Keyframe Animation, for cinematics and gameplay. Control Rig was utilized for all the cars on The Matrix Awakens, built by the Special Projects team at Epic. The cars crash into form realistically and completely procedurally at runtime. Additionally, you can find Control Rig in the Lyra sample project that we ship with Unreal 5. Our digital human team customizes their Animations, all with Control Rig, as can be seen here, on a MetaHuman. And the Forest Guardian sample, that shipped with UEFN, display incredible Keyframe Animation for the dragon, along with the big bot that we showed at GDC. But we also used Control Rig for utilizing runtime gameplay operations in UEFN for the big bot. And all of this was fully animated inside UEFN, using Control Rig. So let's take a look at some of Control Rig's features. This is Bungee Man. And Bungee Man has turned into our mascot. He's a good example of showing the capabilities of classic, cartoony motion. This amazing rig was built by Epic's Games Artist, Jeremie Passerin. And this rig is fully flexible, with squash and stretch capabilities. There's no pose you can't put Bungee Man into. We recently saw some amazing Animation created with him, at our Animation fellowship. And you can view those here, at the conference. I definitely recommend checking them out. The mech-- this is a fully procedural rig. Proceduralism is a core concept of Control Rig. And the construction event is what makes this possible. We have three events in Control Rig, the forward solve, the construction event, and the backwards event. We also have another one, called the interaction event. The construction event, as I unhook it here, you can see the rig completely disappears. There's nothing there. And if I hook it back up, it rigs instantly, and is instantly part-- is what I wanted to get to, is that that's a core concept of Control Rig. Because we're a real-time engine, all of our Rigging has to be instant. There's no waiting for rig builds. It's not even tens or one minute or ten minutes. The next feature I'd like to point out is indirect controls. We also call these proxy controls. So this is the box. This was featured actually, last year, at Unreal Fest. And by using this one, single control at the root, you can animate all the controls on the box. A proxy control just drives other controls. So the fingers are a great example of this, because fingers are really hard to animate. And they're pretty tedious. So with proxy controls, you can drive the entire set of fingers with one control. And it'll keyframe all those controls for you. So this is a really powerful feature. All right, one of my favorite features is called the dynamic hierarchy. So in Control Rig, we do not lock the hierarchy like other software does sometimes. So we consider the hierarchy to be something that you can manipulate at Rigging and Animation. So I've set up a rig here, with the puzzle cube that I asked Russell Paul on the Geometry team to model for me. And he modeled this in Unreal, handed it over, and I rigged it up, using the dynamic hierarchy. And as I manipulate the controls on the puzzle cube, you can see that the hierarchy is actually changing as I interface with it. And I'm also utilizing the interaction event, which is that fourth event we offer in Control Rig. So anytime the controls on the puzzle cube are touched, this interaction event will fire. And then I can set up a bunch of logic, basically, to adjust the hierarchy for me. And so Rubik's cube, puzzle cubes, any of those kind of cubes you have, are pretty difficult to rig. And the dynamic hierarchy makes this really simple. So another interesting thing to point out here, is that you notice I don't have any control shapes in here. I only have the one at the top. And it's a really clean rig. You can actually just grab the geometry. And Control Rig, we let you make any static mesh a control. So I broke apart my puzzle cube here, and turned them into controls. And so now when I'm inside Control Rig, I get a really clean setup. And it's not cluttering the Viewport for animators. So I'm going to pull it apart here, to show you that working in action. And you can add-- we call them control shape libraries. So you can build a control shape library, and add this to any rig or any kind of controls you want, essentially. OK, all right, so let's get into the editor a little bit. I asked a lot of the artists at Epic, who are in Control Rig every day, building all the crazy stuff we're doing, and I was like, what is your editor layout? And they showed me pretty similar to this. Some of them actually showed me this. And this is my layout. So we all set up our editor to look like this. This is not the default view you get with Control Rig. So I highly recommend if you don't know where to start, here. And you're going to have a much friendlier workflow inside the Control Rig system. And just like everywhere else in Unreal, you can rearrange your layout to however you want. Maybe that's not good for you. And you can arrange your layout. And then you can save it for later. So this is the first thing I do every time I come into Control Rig. I always just rearrange my editor for a much friendlier workflow. All right, some of my favorite preferences-- some of these are hidden. So I wanted to call these out. A really cool one is Show Controls as Overlay. So if you're in the Level Viewport and Animation Mode, up here at the top right, you can turn this on, and your controls will show as X-ray. So they'll show through the geometry. So we gave this as an animator feature because sometimes it's great for animating, sometimes it's not. But for Rigging, it's really handy because you just get an overview of all your controls. And this other one, Display Axes on Selection-- if you're Rigging a character, you want to see what your axes are doing on anything you have selected. So if you turn this on, that's going to show you a little x,y,z axes gizmo on everything you select. And a few of-- these last two, Enable Arc Ball and Invert Middle Mouse Pan, these will give you-- I just recommend turning those on if you're coming from Maya or Blender or anywhere else-- maybe not Blender. It's hard to say. But it'll give you a much more friendlier workflow for Animation and Rigging. All right, so my most-used hotkeys, I'm going to talk about two because these are important. So Control-G, Control-Shift-G, this will reset your rig and your controls back to the initial-- we call it the initial state or rest. So these are just muscle memory. Now any time by going to any 3D software, I just-- it doesn't work everywhere else. It's kind of a shame. But I'd pretty much recommend just remembering those because you'll just reset your rig back to your T-pose or wherever you rigged it at, A-pose, preferably. OK, so let's talk a bit about how Control Rig operates internally. I guess I want to point out that the RigVM is not a DAG. The RigVM is not necessarily order based. And that is important to understand when building these control rigs. So this is a small graph. I broke down what these items are. And because it's not a DAG, it's powerful for building systems such as the dynamic hierarchy, that we saw with the puzzle cube. So the execution stack, on the far right, it displays the ByteCode that is being run. And you can double click these items, and it'll take you to wherever you are in your graph. So this is a great way to organize things or see how things are being actually executed. You might notice the term "function" up here. And this is an incredibly important concept for Control Rig, which we're going to talk about now. So all of the rigs I've shown you today would not have been possible without utilizing functions. The graphs would be just enormous spaghetti. We call them spaghetti in Unreal. It's just graphs and lines everywhere. And it wouldn't be readable. You just wouldn't be able to make it out if you didn't utilize functions in these rigs. So functions inside of Control Rig can streamline all of your processes into reusable parts. But even more powerful, you can store all these functions into a group of functions that we call a function library. And this is just the Control Rig asset, with just functions in it. So functions and function libraries will enable powerful new types of rigs. And I'm going to demonstrate that on the dragon, here. This is the dragon. And we built this, actually, in UEFN, for the Forest Guardian demo. And the entire thing, fully constructed from functions, you can see on the right, here. And so as I wriggle the head control around, you can see the dragon gets a really nice, flying motion. And you can pose the dragon underneath all this motion. And then I can go and wiggle the head around, and get some really complex Animation. We originally had some shots in the Forest Guardian that he was flying through the air and everything. And we didn't actually have a ton of time for that whole project. So Frederick came to me and was like, hey, how can we make this easier? And so we had some ideas float around. And this is what happened. And it turned out to be really fun. It's a really interesting way to interface with a rig. And so let's take a look at the graph a bit. So you'll notice it looks fairly simple. And it's really organized and clean. And if I unhook the Construction Graph event to show the incident again, it unrigs itself instantly. And I hook it back up, it's going to rig itself instantly again. Still, even with this complex rig, it's all still instant. And the construction event is where you create your rig controls, procedurally. So this sequence node-- sorry, I got off track-- sequence node-- this does dictate ordering a little bit. So I've ordered some functions in here. And these are firing specifically as I design. And as I jump down into one of these functions, you can see I'm starting to get more complex graph. But then I'm utilizing more functions. I'm going to keep jumping down into these. And you're going to see how big this gets, kind of like Houdini. If anyone's worked in Houdini, you know you're usually interfacing with a top level. If you dive down in there, it gets bigger and bigger and bigger. And this is the same concept. So this is me, jumping down into a function. And this function actually exists in something we call the Standard Function Library. And so you see how this dragon, while it looks simple at top, it just really wouldn't be possible without utilizing functions. Some of these functions are used maybe 100 times, all over the rig. So it would become just almost impossible to maintain. And so let's talk about the Forward Solve for a bit. The Forward Solve is where you store all of your rig logic, such as IK handles, constraints, spline, IK. And so if I unhook it, nothing works. Controls are there, but nothing works. If I hook it back up, the rig instantly works. And this is where all that logic happens. So we've separated out the hierarchy construction and the logic construction. So it allows for some really neat interfaces to be built. OK, so I mentioned the standard Function Library. In an Unreal Engine 5, I think since 5.0, we've been shipping the standard function library. So in function libraries, you can make a function public. It can be a private or public function. So public functions are really interesting because once you make a function public, it's available to every control rig in your project. So all 1,700 of Fortnite's control rigs can access any of the public functions in the Function Library. They have their own function libraries. And you can build those for your projects or for yourself. The standard Function Library ships with Control Rig and the plugin level. So you have access to all of these. And we intend these to be a learning resource. You can totally use them, built most of the dragon with it. But also, we recommend, pull them apart. Make them private. Break it. Do what you want with it or make your own function libraries. And we're continuing to update the Standard Function Library as we release more releases. At the bottom here, we have the local chain dynamics, that Jeremie Passerin added recently, to 5.3 So it simulates the dragon. It's a little different. But this thing is great for hair or dangle bits all over your character. It's really cool. All right, so a common question I get from customers a lot is, how do you utilize Control Rig in Unreal? And it's a fair question. It's like, how do you use it in various parts of Unreal? So we're going to look at three ways to do this. These are the three major ways. So Sequencer, over here on the left, is available in Unreal Engine, in Unreal Engine, in Fortnite. And it's as simple as dragging any Control Rig asset into the Level V port. And you're ready to go for Animation. You can start keyframing, building Animation immediately. The next, Animation Blueprints, is available in Unreal Engine. And this is for gameplay-- I'd say more advanced gameplay operations. And you can do really cool things in Animation Blueprints, such as mixing control rigs with physics, or other control rigs. You can create a lot of logic around branching control rigs. And the last one is the Control Rig component, which is where I get the most questions. And that's how you interface with the blueprint framework in Unreal. So we're going to talk about that one today. If you want to know more about Sequencer, definitely check out Fredrik Nilsson's talk. I believe it's tomorrow. I have it at the end. But he's going to be going through that workflow really great. OK, so let's talk about Control Rig Component. So I took the dragon rig. And I built a little level here, using some assets from our ecosystem. And I hooked the rig up to keyboard input. So I'm driving this live. And as I hit W, I'm piping a sine wave into the rig. And if I hit A and D, I'm taking that little control, that we can move around. And it's basically controlling the character. So there's no Animation in here. This is all done with Rigging. So it's interesting in the fact that-- you know how I said we're instantly building all the rigs? It's all procedural. So everything is being generated procedural here. There's nothing that's actually coded in. So it gives you an idea of what's going on. So as I fly the dragon around, you can see that all this motion is coming from the Rigging. And there's no actually keyframed Animation. Even the little whiskers move. That has this dynamic set up on it. So you get some really nice dynamic motion in there. So it's really fun. You just drive them around and you get some really interesting effects that would probably be pretty challenging to do with keyframe Animation. So I thought it'd be a good idea to take a look at the blueprint, roughly. I I said, this can get kind of spaghetti. So that's the controller component. And this is the one thing you do. If you want to use the controller component, you need to map your Control Rig. That's in the documentation, but definitely, that's the one thing that everybody misses. And once they learn that, they're off on the race. So once you get the component, you have a lot of really nice operations. So I'm using the Set-Control-Offset just to drive the control. And I'm building the sine wave inside of the Blueprint node. So you can take that as far as you want. I tried to keep it a bit more basic. But you could really deck that out and do some super cool stuff by using the Control Rig component. And so I'm going to bring up Control Rig here too. You can also preview it inside the Control Rig Viewport. So this is great for debugging. So if in my game that's running right now, and I come into the Control Rig Viewport, I can turn on the debug. And now I can see the rig, all operating and doing its thing. So this gives you a good idea of how to debug the system once you get in there and start operating with the Control Rig component. OK, and the last thing is that maybe you need to write out some Animations. You've set all this up. You can just record right in the Control Rig Editor. So I'm going to hit the Record button now at the bottom, make a new Animation. And then to start playing my game-- and you're going to see the rig doing its thing. All right, so almost done. So you're going to hit Stop. OK, so now what it's done is, it's written out an Animation sequence for me. And all with procedural Rigging, we've made Animation to stop the game, to view this. And now I have a really nice, organic Animation. I've turned my background off. So I need to turn off the auto exposure. So we just created Animation from procedural Rigging. OK, so we'll switch gears just a little bit, similar vein, and we're going to talk about Lunar Horizon. So James Golding, who was the Dev lead on Lunar Horizon, came to me-- and this is all on Unreal Engine in Fortnite-- and he was asking me if we could use Control Rig for some kind of-- not a character, not usual things. So what I'm going to do is, show the game and talk through where we used Control Rig in here. OK, so-- yeah, there's a little bit of sound. You can play this here at the conference too. So you build a moon base. And I'm going to build the medical module. And that's going to enable this survey rover. So the survey rover starts moving. And the survey rover is just actor animated, along a camera rail. And there was no-- it wasn't interfacing with the ground or anything. So we were able to make it with Control Rig interface, with the ground, and bounce around. And it sticks to the ground. And the tires rotate realistically. So it just adds a bit more life. And with these, we also needed to snap them to the ground. The beacons needed to snap, like in a strategy game. And we'll talk about that in a minute. And going back to our procedural concept, I'm going to build the greenhouse module, here. I was able to take that Rover rig and propagate it to these rasters. These are little vehicles that go and dig up resources for you. And they're somewhat different. The Rover has six wheels on each side, much smaller. But I was able to take that rig, and because it's procedural, just mostly plopped right into these guys, with little adjustment. And we get the same type of motion, tires rotating and bouncing over elements and slowing down and stuff. So pretty fun. So if you're playing this and you see these, that's where a Control Rig is. So I'm going to fast forward to this off-roading part. I drive a Jeep, so I was like, oh, I have to see these things can off road. And it's a little dark because the ray tracing was on. But it totally holds up in all the really rocky sections of the game. So go check that out at the conference if you want to see Control Rig in action. All right, so let's talk a bit about the setup. So this is the Rover. And I'll just use this part of the game that I showed on the demo. So you can see, it's trying its best to bounce over any obstacles. And it's jiggling around. And what's really cool too is that right in the Editor, you can come in here and change it. So you can change it. And there we go. I have my Animation adjusted instantly, in context. You're right in context in the Viewport. And so I would consider this less of a keyframe Animation rig. And it's really a runtime rig. So here's the rig in Control Rig. And you could definitely keyframe this. But it's really designed to layer on top of other Animation. And so as I move this one control around, it'll rotate. And the wheels will rotate. And all the IK is working, and mechanical bits. And he bounces around a little bit to add some secondary motion, and just brings it to life a bit more. And some motion can be difficult to achieve with keyframe Animation. And Control Rig is really powerful at layering, on top, secondary motion. It's pretty cool. All right, so the next thing-- this is actually the original asset James asked me, was these beacons, which is not a character or a vehicle. But in a strategy game, you need to be able to place beacons around. And in the game, you place these beacons and get resources. And I was totally like, yeah, we can do that with Control Rig. So we have a Sphere Trace node that will scan geometry. It's really powerful. And so what's really nice about doing this in Control Rig is that you can tell it how soft to be or how hard to be or to align along the normal. So we had a lot of control. And they were able to art direct it. And this is not something you would think that you could use Control Rig for. But it was really interesting that this worked out really well. OK, Skeletal Editor, I'm going to shift gears a little bit. So this is new to Unreal Engine 5.3. So when we're looking at the current state of character technical tools in the industry. We noticed that a lot of these workflows have been quite stagnant over the last few decades, with few big innovations happening. Many professional studios actually have had some innovations in workflows. But these are all locked behind private gates. And that's OK. But they also have a lot of institutional knowledge there, to leverage these workflows. So in a nutshell, for all these tools, you have to write your own tools to be successful, or at least learn multiple pieces of software, some with really high learning curves, and as some of you might know, have really tedious back and forth trips between Unreal and these softwares. So the Skeletal Editor is an experimental plugin we've added to Unreal Engine 5.3. And it lets you create bones, edit bones, and paint skin weights. So now instead of having to leave Unreal just to rename a single bone, you can easily do this right in the Editor. So let's talk about the current state of the Skeletal Editor and what "experimental" means in Unreal. So experimental means that we do not suggest you use it quite yet for heavy production workflows. It's a brand-new tool. And we are still working on perfecting. It will be missing some features. And some features will have bugs. And it's going to crash at times. We are still shaping it, fixing it, and trying to make it the best we can. And while the Skeletal Editor is experimental, we are fairly confident in its current state. And we are currently working towards a beta release. So because we just recognize it's such an empowering feature for Rigging pipeline inside Unreal. And it's just making character construction that much simpler. Oh, there we go. All right, so here's the Skeletal Editor. So when you load the plugin up, this will be what skeletal mesh assets now look like, after you load the plugin. You have your Enabled Tools at the top. That actually turns on all the tools, which if you've been in the Modeling Tool framework, it should look pretty familiar. Our tool's to the left, and we've moved the Skeleton Tree and details over here, to the right. So let's take a look at this in action. So I'm going to load the plugin here. And I have it loaded. And I'll make you restart. Once you restart, you're going to get a new option on static meshes. You can convert any static mesh into a skeletal mesh now, with one click. So I've converted Marsh, who is an old Paragon asset we never released, into a skeletal mesh. And so now he has no bones in him. And we get a root bone. And the first thing I'm going to do, actually, is just adjust the root bone to be in a better position. I'm actually going to move it back to the origin. It'll try to center your root bone best possible, in case you're doing something for a level. OK, so when I hit Commit at the bottom-- you might see me hit the Accept below-- that will commit the bones. And then it's live in the rest of Unreal. So I recommend going to the Lighting Only mode. This is going to make building bones much easier. So when I start placing bones in here, you can see them pretty clearly. So you just draw bones wherever you want your character. So I'm going to just rough it out, here. And we're trying to take the center of your geometry. So some places, this isn't going to work great. It'll work great in most cases, but not-- so in that case, I'm just going to come in here, and I can zero out the X component to center these bones. And to enter the Bone Mode with a hotkey N, that's the hotkey, N and Escape, that'll let you enter Edit and Add Mode at the top. So next, we're going to draw the arm. And so we have tools to orient bones now too, really handy, especially if you download something off the marketplace and the orientations are off. You can do that with this. But auto orient is great if you're building new bones. We're also going to turn on this Axis Length and Axis Thickness. This is going to show you the orientations on all the bones so you actually can orient them correctly. OK, so we turn those on. And you should see them in there with the x, y, and z. So let's start placing the arm. And so I'm going to draw the arm, does its best job to fit it into the center. And you can see, it's orienting itself automatically. And we do a pretty clever trick. If you build two bones, it's going to create a plane to try to give you the best rotations possible. But I will say, we're still working on it. You're going to probably have to adjust these yourself, to some point. It can't do everything for you quite yet. OK, so we hit Accept. And so we have an arm. And we also have a bunch of mirroring tools. You can mirror all your bones. I recommend only building bones on one side of your character. That concept's been around for a while. I'm going to rename these quickly. I won't make you watch me rename all this stuff. But you should rename your bones, very, very important. OK, so we're going to mirror this guy. So you just select the clavicle the top part you want to mirror, and you click Mirror. And now we have the right arm built. And it'll also do name searching. So when I'm mirroring from left to right, it'll search for all the names. So let's draw the tail. I'm going to show you one of my favorite features in a minute. It's a small thing, but it's really cool. OK, so line the tail here, like we did with the spine. Zero out the x component. OK, so we need to rename all these guys. So instead of doing it one by one, you can grab them all. And I'm going to type tail_##, and it numbers them all for me. So if you have a ton of bones, it'll just do it instantly for you. It saves so much time. Small, but big detail. So I thought it'd be great, instead of boring you with watching me place bones for 30 minutes, I sped the video up here. And I did finish out the character. I'd say it probably took 30 minutes to an hour. I was pretty surprised how quickly it went. And yeah, so I'd say the use cases-- we're going to have use cases of building entire characters like this. Or you might be retrofitting a previous skeleton to a new asset. That's probably a pretty common use case for this, or adding bones for little dangly bits, all over your character. OK, so we're done. So I got him mostly done. He probably needs a little bit more work. But I think for a prototype stage, this is pretty good. So now, we're going to bind the skin to it. So we have Bind Skin. We have a few binding types. We have Geodesic Voxel and Direct Distance. I'm just going to leave it on Direct Distance. So you just hit Accept. And we'll have a skin bind ready to go. And you do have to leave the Editing mode to Animate right now. We've already fixed that in the next release. So that's just a caveat of being experimental. So really cool. So let's talk about the Painting tools. So I'm going to use Quinn for painting, just because she's a bipedal character and it's a bit easier to visualize these painting brushes on. So if you middle mouse-- once you have weights, you can middle mouse on any of the bones. trying to get some bones some weights. There we go. And that will select the influence that you're painting on immediately. So there is no concept of influences. You just select your bones and paint the bones. The Linear Blend Skin Deformer is in the skeletal mesh. So there is no concept of having to manage separate influences. You're always just painting on the skeleton. So really cool hotkey, B-Left, Right will radius. D- Up, Down will scale your strength. So we're trying to keep you in the Viewport, in context, as much as possible. And some of it's middle mouse, doing some painting here, might B, up and down, to get a better strength or softer strength. So it's getting softer. And you see the paint, getting a bit softer there. All right, and we also have added Vertices mode because we know you have to make per-vertex skin-weight adjustments sometimes. So in this mode, you can select individual verts, and adjust their weights, or a bunch of verts. We've added a Box Selection to be able to select the verts. Here we go. All right, so then you can run a bunch of operations. We have a bunch of flood operations, Add, Replace, Multiply, and Relax. Relax is smoothing. That's we refer to-- and these mimic all the same brush tools. We have brush tools for all of these. And so the quick note on the Relax is that it's not just doing a smooth that we're probably-- if you've used other tools that you're used to-- it's doing a really clever algorithm on the geometry, to figure out how to smooth it. So it should work much better. OK, when we have to average, Average is great. If you have stray verts and you need to bring them back in it, just basically takes the average of all the surrounding verts. Stray verts is a common problem. And you can also display your weights as colors. Some people like to work in gray scale. Some people like to create color scales. And so you can go and change them with a gradient as you wish. All right, we also offer a Python API. So this is still early days. But we do plan-- we understand that big teams and individuals need flexibility around these tools to build other tools, to do very unique things that we might not be able to offer for a while. So we're trying to offer a really deep Python API that you can extend and build more tools around these. I've already seen some really cool stuff with transferring between meshes. And we're going to see more of these coming in the future, for sure. Again, the hotkey list, I won't go over all of these by hand. But we have a lot of hotkeys. And I will say-- I'm going to show you a QR code in a minute, to get to all this information. So don't feel like you have to remember this because we have the Usage Guide on the Epic Developer Community. Everything I went over today is on here. It's a QR code that should go to it. And the hotkeys, Python examples, and more-- I just couldn't cover everything in this little time. There's a ton of really cool things in this new tool. And we go into details on how the Skin Clusters are working. So definitely check this out. In a similar vein, I've updated the Control Rig Resources page that we have. If you've seen this before, it's been newly updated with a bunch of new, cool tutorials. If you haven't seen this before and want to get started in Control Rig, this is the best place to go to get started. Roadmap's on there, a bunch of really neat things, and Skeletal Editor. All right, last but not least, the dragon I've shown today, we just added it to the Control Rig samples pack, that's on the marketplace for free. So the dragon, you can go grab it and pick it apart and use it in your projects. Like I said, it originally came from UEFN. So it should be able to go back if you want to use it for that too. Go check that out. That should be live now too. All right, so let's talk a little bit about the future. OK, so for Control Rig, we are currently working on a modular framework for Rigging inside of Unreal Engine. We're trying to capture more in-Viewport workflows. We understand Rigging is hard. We know Control Rig is hard. It's hard to learn. And we're trying to simplify that process a lot. We're trying to bring in a playful experience to Rigging, such as kitbashing characters together, thinking more in the vein of character parts, and less about granular Rigging elements. So instead of thinking about IK handles and FK handles, you're thinking about arms and legs and being able to kitbash all these together. It's more about the art. As I said, we're already working on beta for Skeletal Editor. Here's a preview of some stuff we've already done. At the top right, we've added a Component Editor. Kiaran Ritchie, one of-- the designer for skin-weighting stuff is-- he's just hard at work on it. And he's also added-- you can now animate all the bones, directly in context, while you're painting weights. So we're hoping to keep extending that, and have more contextual workflows for all of these workflows. And we're also currently working on exposing the Skeletal Editor into UEFN. Hopefully sometime next year, we'll have this all available to that framework too. The Deformer Graph. So I get lots of questions about the Deformer Graph. I didn't talk about it much today. But we are still working on it. It's currently in beta. And we are working towards a production-ready state. We consider production ready that we feel confident you can use it inside your projects. And we believe the way here is to be able to add functions to deformers, similar to how I showed you with Control Rig. And that will give you a lot of flexibility in being able to chain deformers together and author really interesting deformers, and do things with geometry that we might not have seen before, inside of Unreal, such as this little guy, over here, on the right. All right, so I've shown you a bit of what we just added into Unreal Engine for 5.3, and bit of what's coming next for some of our exciting character tools. Personally, I want to do more art and less technical gymnastics around character Rigging. And understand that many people don't understand all those technical gymnastics. So let's all agree together, we want to make every facet of character creation a chore, not a chore, but a joy. All right, so Animation Talks coming up. I definitely recommend checking all these out, really cool stuff. If you want to see more about the Lunar Horizon project, as a whole talk on it. It's going to be great. That's tomorrow. And Hybrid Animation Workflows, Using Animation in Production Environment, by Fredrik Nilsson. He's going to show a lot of really cool things, more of the dragon. He was the animator. So definitely recommend checking out his talk. And then Stylization and Animation and Effects with Michael Neely. He's doing some really cool rendering workflows around Animation. All right, Thank you. [APPLAUSE]