Description
Key Learnings
- Learn about Maya tools for better workflows in hand-keyed animation.
- Learn how to export, organize, and address notes using the native tools in Maya.
- Learn about animation craft.
Speaker
- ASAlex Ferreira SimoesMy name is Alex Ferreira Simoes and I'm a character animator originally from Sao Paulo - Brazil. I'm currently working at Riot Games as a Senior Gameplay Animator on the League of Legends Champions team and the Founder and Mentor at Animation Flow - an online 3d animation focus school with weekly lectures about featured film and gameplay workflow and mentorships. I'm also an animation director for some short films and TV commercials for different clients. Before joining Riot I was at DreamWorks Animation for about 2.5 years, working on several projects like The Bad Guys, Boss Baby Family Business, Abominable and others, before that I worked on some other featured films like Spies in Disguise (Blue Sky Studios), Hotel Transylvania 3 (Sony Imageworks) and several others as a freelance artist. Previous from working with Featured Films I worked on several TV Series, Short Films and TV ads, which was very important for me to learn all the different workflows and needs for each different industry.
ALEX FERREIRA SIMOES: Hello, guys, welcome to the hand-key animation workflow in Maya for gameplay animators. My name is Alex and I'm a senior gameplay animator at Riot Games and the owner and founder of the animation flow. And today we're going to talk a little bit about the stylized animation in Maya with the focus in gameplay.
So we're just going to be breaking down the process of how you approach in Maya animation to think about the player input and the high quality polish. So today, we're going to first understanding the assignment is the main key what we're going to do, what we're going to do today. Then we'll go to the steps of our process, recording, reference, blocking, spline, polish and in-game implementation.
So a little bit about what we're going to go over today Is Astoria Adventures. We're going to go over a heavy attack in Maya and a little bit about what the assignment is. It's going to be a game, 3D sidescroller that takes place in old Greek/Roman mythology. So with that in mind, we're going to start developing more of this idea.
Our main character, Astoria, is a strong hero character, uses her sword and magic to defeat enemies, so we know a little bit of who the character is. Our assignment is to create a heavy attack that would seamlessly blend into our idle and Locomotion states. So we have the game. We have the style. We have the character. And we need to create an animation for this character inside this game.
And the final result should be a new attack animation implemented in Unreal Engine 5.4. We do have the rig inside Maya. We're using Maya 2023, 2025. It doesn't matter the version that you are using right now. But we're going to have the rig in Maya. And we're going to do the whole process in Maya and work with the game exporter to bring it to our engine. On this case, it's Unreal Engine, but you can use any other engine.
So let's just dive in and start a little bit of how this would be approached in a professional environment with the focus in the animation. Let's just the reference boards. Here, usually I go over Pinterest, YouTube, Google Image, all those sites that you can find a lot of images from different artists or even museums and sculptures and old Renaissance artists, all those kind of art to inspire yourself.
And then you start creating a reference board based on what we need to talk about in our game. If it's Greek mythology and it's a heavy, heavy attack, keep in mind the keywords, Greek mythology, Greek/Roman, heavy to keep the weight of the character. It's strong, main character vibes. So with that, I create a little bit of a reference board, but I usually go deeper in this. And I just keep researching for a long time.
The most important is always keep in mind the player and how animation will feel in game. It's very important that you understand that the animation has to be very responsive. Because it's a heavy attack, a lot of animators who think in the animation principle think, oh, I'm going to make this slower to show more of the weight. I'm going to make this more polished with more arcs because it's going to look pretty.
But the most important for stylized gameplay animation is the player input and how does that feel in game. When you start playing the game, you do the input action. And then the character does the action that you're animating. So let's dive in on this first assignment that we have.
The first step that I took here was to record video reference and my process in recording video reference. And we can just play it again. So I set up my tripod. I'm going to leave this post here. I set up my tripod. I tried to get props. Always be safe when you're recording reference. I try to get some props to make sure I can feel what the character is feeling.
It doesn't need to be exactly the same. And I start exploring with in mind what the character would be doing. For example, here, I wanted the character to lose balance because it is a heavy attack. And it is a heavy sword. So my goal was to not just make the action, decide what the action is, but also put a little bit more personality, put a little bit more of stylization.
So for example here, it was my idea also to change the hands on the back. It gives an extra touch of making it interesting. And I have this recorded. I always invite some co-workers, some friends just to record together because it's something nice to brainstorm and get other people's opinion.
And then we just keep going to the first blocking. What is our first blocking? We're going to analyze this reference. I bring it in inside Maya. I use image plane, importing a sequence of images. And I have this on my Maya viewport. And then I start just putting the main poses of my character.
So basically, I'm going to get what I have in the reference, get my character, and try to just make the same with my 3D character. I'm not copying exactly because the proportions are different. And the character, like the props are different. It's a girl and all like those details, but I try to get the main gist of it.
But if we keep moving forward with this, the problem is it's going to feel too slow. It's definitely going to feel too slow. Imagine if you're playing a game. You click a button. And then you have all of this time until the character attacks. No one will want to keep playing this game because the responsiveness is the most important.
So after I have this first blocking, where I have my main poses, where I can see it's like a comic book of my character, then I go over to a retimed blocking. What retimed blocking means? I forget about the timing of my reference. I still leave it there to check the poses, the nuances.
But when I play this version, now I have a much more impactful animation. So it's pretty much the same poses. The only difference is that now I'm going to have a much better player input response. So same poses, I'm just trying to get a better feeling and making the adjustments as I need. And as you see, I'm barely even swinging the sword of my reference. And my character is already getting back to the idle states.
One important thing to notice here is that we should start with the idle animation, the idle pose, and ends with the idle pose. So every time you're going to start your animation, you need to come from the idle and then end on the idle. And of course, I'm going to keep going forward. And I'm going to show more. We're also going to blend into locomotion if the character is running, walking, et cetera.
And this is our retimed blocking. So next step will be to finalize the blocking. So now what we have here, it's a path where I have all my main poses that I can sell this idea. This is called the blocking. That's where we have all the main poses that we can show a supervisor, we can put in game, we can even give to the playtesters. And they will be able to understand what's happening.
That's our goal for the blocking. We don't need to do all the extra refinement, all the extra polish. But we have the whole idea pretty much figured out here. As you see, there's even some viewport effects that is just a way to demonstrate more of how this attack is going to work. And there's more information in terms of the weight of the sword, the mechanics of the character, et cetera.
Finishing the blocking, you usually go to a co-worker, to your lead, your supervisor, your director. If you're doing a personal project, you ask some colleagues, some friends. And then you start getting notes until you go to the first spline pass. So first spline pass, now we're going to start just making this animation work a little bit better in terms of flowing, because if everything is that, it's going to be strobing in game. And it's not going to be looking fluid like the rest of the game.
So we just go over and start cleaning up or blocking, making sure the weight is still there and all the poses, like the poses that we worked before, are still there. But the character is flowing in a much cleaner way. If we watch this step here, you see how we still have the same feeling all the way back there from the reference. But now it's more refined. And it is starting to get better, cleaner.
After the first spline pass, you talk to your friends, co-workers, leads, et cetera, and you achieve your final version in Maya. So as we can see here, now we have all the poses that we had in blocking, all the poses from our reference. But everything is looking clean and everything is working perfectly in the Maya viewports. So basically, we went over from recording the reference, get a tripod.
Before even starting, before even touching the rig, we get a tripod. We go to somewhere comfortable, somewhere that you can be comfortable with yourself as well because it is hard to record something when people are watching. So I like going to a separate room. I experiment several different things. When I like something, like OK, I like this first version, I go inside Maya.
I put the reference as an image plane. And then I can scrub and see my reference inside the viewport. And then I start putting the first poses. With the first poses in mind, I can get a good idea of how the character will look performing the action that I was recording myself. So with that, I start retiming to make sure it's working for the style because we're doing a stylized animation, so making sure that this is working for the style that we want in the case of our game and with the character.
So we retime this animation. We finished blocking. That is going to be the first time we're going to see this animation in a more complete stage that you can actually share and understand. And you see the similarities to your reference. And you see your reference was too slow. But now the animation has the same nuances, like changing the hand, how you're grabbing the hands, and how we had to get rid of the sidestepping because was getting too slow and taking too long.
So we have nice slides. Passing that point, we go over to the spline version. And spine version is just cleaning up, start polishing, making sure everything flows. And we have our final version. And after this final version, we have the implemented version in game. So this is where we actually export everything from Maya. And we bring it here in game or for the player to actually make it work.
So this is the final result of the animation implemented. And as you can see, it's stylized. It's sharp. It has a nice timing. It has a nice texture. It has nice poses. And it's working in game. Now I want to dive in Maya little bit to show my workflow and some details that Maya really helps us working with that.
So let's go over-- let's go over our Maya file here. And you'll see how it's very important for games that you work on every angle. For me, it's very important that you always see your character on every angle. And one of the very good things that I have in Maya here is the bookmarks. So I can actually set my bookmarks and define, what is my attack? And what is actually a blend back to idle?
For example, here, if I play this animation, for the implementation in Unreal, what is happening? First, my animation is playing. We can see with the controllers where the root of the character is translating because we have root motion on this character. The root of the character is translating forward. That means that when we're blending back, remember if you have root motion, when you're blending back, your character is going to go back to zero in the capsule.
So if your character is far away from the root, it's going to be far away from the capsule in Unreal, where you can actually get the collisions and all the game requirements that usually your game designer is going to tell you that. So with that, I brought it back to zero here. And then these bookmarks make very easy for me, if I right click on bookmarks, I can just see my bookmark manager.
And it makes it very easy for me to just, OK, I want to work only on my attack. And I just bookmark this. I want to work only on my transition back to idle. And I know where they are in my file because it can get messy, a lot of keyframes lost around. So this is one thing, very important organization when you're working with game animation.
And as you see here, my bookmark manager, I also have a two walk and a second attack because that's how it is on game animation. I like working with one file. If I have a combo attack, I work with one file. And then I keep going on this file for attack one, attack two inside the same file and blending to idle, blending to run inside the same file.
So if we see here the second bookmark, you'll see that the character, the same pose. And that's where Maya also helps us a lot that I can create a selection set. So I can select my whole character here. I select my whole character. And I can just create a quick selection set. Select, quick select set our character. Or you can create a new one.
And I save this to my shelf. So whenever I click here, I have all controllers on my character. And then I can just copy. I need this idle here. I can just copy this idle over to where I need. And the same thing, all I want to blend from-- if this is my attack, this is my first frame of the blend. So I can copy this frame to my frame 161 and make this my first blend of the walk.
So selection sets are also super important and super easy to use here in Maya. Just create a new quick selection set. And we have the bookmarks. And the same with the second attack. For example, here I just did for the sake of this presentation, a second attack. And you see the attack starts from the middle of our first attack. So whenever the game designers implement this in game, they're going to put a call here that starting on this frame, we go over to the second attack.
But for you in Maya, what is very useful for me is that with the selection sets, I can just copy all of this. And then I can really see how this is going to work. And whenever I'm exporting, I have the bookmark. And I know I'm just going to export those frames.
But on my timeline, I can just see how this is going to work together as a combo, part one, part two, which is great. And this blends back to idle, which we're probably going to create another blend to idle, another blend to walk, or reuse the same. That's going to depend on the game, the memory budget of your game, et cetera.
So those tools are super important in terms of creating gameplay animations, keeping the file organized. And you see I have some gaps here that there are no keyframes. And even the character, the rotations are going crazy because I'm rotating the character several times. But it doesn't matter because what matters is what's on my bookmark because when I export my character, again, that is another very cool thing from Maya, is that I can select my root bones.
So I'm going to just select my whole character, select all the hierarchy. And then to export, I'm going to go on game exporter. And this native Maya tool, it's amazing to make the export process very easy. So with my bookmarks, now I have all my animations here listed down. And I have the same time frames.
So if I get my bookmark manager, I can just get attacks from frame 0 to 45. To idle it's 46 to 73. To run, 161 to 193. Second attack, 244, to 82. And with this, I can just export the right times, the right bookmark. I don't need to keep checking and keep noting on a sketch pad or something. And I can just put a prefix. Because my game have several characters, I'm just going to put the prefix of my character.
And each clip is going to have a different name. And this is going to export the animation clip directly to this folder in FBX. You can change the FBX options here. And that's it. That's great. You just click here. It's just going to export everything. It takes like no time. It depends on your rig. But the export process, it's super easy.
And with this, we just go over on your engine, whatever engine you're using. And you can just tell the game designer to implement or implement yourself, importing the FBX. And the animation will be there. So the main point is of stylized game animation is understand the game that you're working on and all the needs of this game. It's very important to immerse yourself in reference.
And if possible, record your own reference. I don't know that a lot of times-- and this is like a common question that I always get-- like, oh, what if I cannot record my reference? What are the other workflows that I can do if I cannot record? It depends on your skill set. Of course, you can always look on YouTube or any other video platform that you can find several videos to try to find something similar to what you want.
I would avoid trying to get something already animated, like looking on another game, because they looked for a reference already. So you're just doing something that is interpretation of a reference. So always try to get live action, recording myself. Or if you have good 2D skills, you usually do a 2D pass. I try to do that sometimes as well. It depends on the character.
If it's like a dragon, a monster, something like that, I just think about shapes. I'm not a good 2D animator or 2D concept designer. But I just think about the main shapes and timing and just do a 2D pass. Always the most important on game animation is to always pay attention on the time and on the weight because the timing needs to be responsive. That's the main difference between feature film animation and game animation because your timing always has to be responsive.
But you need to sell a lot of weight. It needs to feel good when you're playing. But at the same time, it cannot be too slow or can hold back on your player satisfaction of controlling the character. If the character is going from left to right, one side of the screen to the other side of the screen, and there are a lot of footsteps, a lot of weight shifts, a lot of that, it's going to make the game less enjoyable.
The animation is going to look amazing, perfect. You show all the weight of this character. But the game is going to be less enjoyable to play. But at the same time, if you have a huge character and you go from left to right and suddenly the character just jumps there, it's going to kill the illusion of this character is big and heavy because it's just moving too fast.
So that is the main problem that I see in stylized game animation, is how to make sure you can sell the weight of the character and having a good timing response with the player. And that's what we went over today with this character, trying to still sell the weight. You see it's very responsive when we press the trigger. But we can still feel the sword is heavy. The weight is like turning around and getting the sword back.
It feels more of this weight. Keep in mind the implementation responsiveness. That's everything that we're talking about. And make sure to name and organize your file properties. Maya has several great tools for it, including the bookmarks, the bookmark manager. You can put all your bookmarks in there. Selection sets, you can select just parts of the character and save on different sets.
Or you can select the whole character if you want to transfer one part of the character, one part of the animation to other frames. And the game exporter is a great way to have everything on the same file. But it's still very organized. And you can export. Everything is just one batch. And you can always have different files for different animations, like attack one, attack two.
And you can just save from one file and import on the other file. Cool. And that's all I wanted to go over today with you guys. And thank you so much. Let me know if you have any questions. Feel free to contact me. And I hope you enjoy. And I'll see you next time.