Game Rig Tools (Blender Addon) - game-ready rigs in seconds!

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hi this is cgdive and i want to introduce you to our new blender island we call it game rig tools and in a nutshell it can help you create game ready rigs quickly and efficiently it works with any blender rig and any game engine unreal unity you name it the add-on is based on the cg dive workflows for game rigs that i shared on my youtube channel until now these workflows were manual which was slow and open to errors game rig tools automates the whole process i know that many of you are busy so i'll show you how the addon works in less than a minute and then you can decide if you want to keep watching and get the addon or if you want to click away in blender i have a character rigged with a nice animation rig you may recognize that it was generated with 3dify but i want to emphasize that gamebreak tools works with any blender rig not just rigofy if we try to export this character and rig to a game engine now it will be a disaster again this is not because of rigify 99 of blender eggs are not fit for games and will be plagued by the same problems however with game rig tools i can select my animation rig and go click and click and believe it or not we now have a game ready rig the addon created a separate deformation rig that can be exported easily the only drawback here is that if i want to export any actions i need to animate the control rig and then bake the actions to the deformed rig and that can be time consuming however with this addon i can select the actions i want to bake set my rigs press a button and done now we have a character with a game ready rig and game ready animations everything can be exported to a game engine and it will work perfectly if this sounds interesting then keep watching and i'll explain the underlying problems that make this add-on necessary i'll show you how to download and install the add-on and i'll demonstrate a few possible workflows with it so why do we need this tool and what is a game-ready rig anyway if you don't know the answers to these questions please watch the next couple of minutes of the video i'll try to give a brief explanation and then i'll give you a demo of the add-on you see in blender we can create sophisticated animation rigs with a great deal of control we can create ik controls stretchy limbs we can even change the pivot of control of a certain body part on the fly and this is great for us as animators however these fancy rigs can not and should not be fully exported to a game engine a game engine simply does not know what to do with all the controls what we want to export is only the bones that actually deform the character the so called deform bones in blender rig controls are generally constructed using non-deforming bones this may confuse you at first if you're coming from another 3d package like maya or 3ds max blender has export features that attempt to limit the exported bones to only the deforming bones however the more complex your rig is the higher the chance that unwanted bones will be exported along with the actual deform bones this is bad it will make your character less optimized but that's not all this problem is related to another important issue bone hierarchy the reason unnecessary bones are exported is that control bones are sometimes in a direct parent-child relationship with the deforming bones the exporter needs to export the parented control bones in order to preserve the exported animation so not only do you get extra bones but they also tend to mess up the hierarchy of your game rig bone hierarchy can be important for various reasons and then there is the issue of squash and stretch in blender a stretchy bone is easy to set up and for example rigify creates stretchy arms legs spines and so on by default squash and stretch in a game engine on the other hand is a can of worms even if you don't want any cartoony stretching in your characters you need to understand this issue because it is possible to squash or stretch a bone without realizing it leading to unexpected deformations in your game character and the solution to most of these problems is what i call the basic principle of game ready rigs you want all your deform bones to only be constrained and never parented to the control bones this way you never have to worry about extra bones being exported and your deform rig your game rig can have any hierarchy that you desire nice and clean this setup can be achieved within a single armature but i find it advantageous to split the game rig into a separate armature this way it's easy to keep track of your export bones you can control the hierarchy and so on this approach is also very versatile you can take any existing rig and make it game ready even if it wasn't that way before that is why i chose this workflow as my go-to technique for game ready rigs and our add-on game rig tools is also based on this workflow okay i'll stop here with the issues but i do recommend that you get a firm understanding of them if you like you can watch my earlier videos i'll share a playlist now in these videos i show manual solutions to the problems game rig tools automates these solutions so don't focus on the manual work just try to understand the underlying problems and how it is being solved while this add-on is based on the cg dive workflows it wasn't created by me it was developed by blender boy who is a very talented add-on developer you can find his other animation and rigging tools on the blender market he contacted me one day out of the blue and he sent me an almost complete version of game rig tools that he put together just based on my videos after some back and forth he added a bunch of nice features and now the add-on is ready for the public okay how can you get your hands on the add-on just go to the marketplace links that i'll share below the video or you may already be watching this video on one of the marketplaces regarding the price of the add-on basically there is a recommended price of 15 but you can pay whatever you want now on some marketplaces we cannot set a pay what you want price so in that case it will just be 15 we want the add-on to be available to everyone but contributions help the continued development of the add-on once you buy it go to the product content download the game rig tools master.zip file do not unzip this file just place it somewhere on your hard drive where you can find it easily in blender go to edit preferences add-ons click install go to the folder where you left the zip if you have a lot of files there enter the add-ons name in the search field select the add-on and click install game rig tools will appear in your add-ons click the check box to activate it and it will be ready for use there are a few add-on settings that you can tweak if you click the little arrow here they mainly affect where the tool set will be displayed by default the add-on will appear in the sidebar here it is game rig tools if i wanted to appear under data properties i can check this checkbox data properties when working with an armature is basically the armature tab if i go to the 3d interface create a bone and navigate to this tab here you'll see that the toolbar says object data properties if i select this tab and look at the bottom i'll find game rig tools there that is because i activated this checkbox if i deactivate it it will disappear from there i can also make it disappear from the side panel which will make the add-on completely unavailable in the interface so do choose one of these options i personally like the add-on to be in the side panel we also have a tab category this defines in which tab the add-on will appear in the side panel currently it has its own tab called game rig tools now this area easily gets cluttered so this option is a great way to place the add-on exactly where you want it for example you can change the name of the tab to something shorter for example grt and the add-on is still here it's just in this short little grt tab and that is all about most of the settings this add-on has two main functions one is to generate a deform brick or a game rig out of your existing control rig and it not only extracts the armature but it cleans it up it constrains it properly it automatically does a whole bunch of operations that you should be doing when preparing a rig for games the other important function is baking animations from the control rig to the game rig that we extracted using the first function the action baking functions are here in the action bakery section and i'm going to explain how you can use it later in the video but let's start with rig extraction first so as i said this addon doesn't work for you to start using the add-on you'll need an existing character and a control rig of any sorts it can be riggify or it can be your own custom rig or a rig that you downloaded from the internet it doesn't matter ideally you should have the character parented and weighted to the control rig and again ideally bones that deform the character should be tagged as deformed bones and rig controls should have this property off our add-on can handle more complex situations but by default it simply tries to extract the reform bones once you have your character set up then game rig tools can take over next i'll show you the two basic setups that i use very often the first approach is the one that i would recommend 80 to 90 percent of the time or if you have no idea what you're doing then you should probably start with this approach with this setup you can have perfect control over the hierarchy of your game rig and it will also allow for limited squash and stretch but what is more important is that this setup is free of squash and stretch issues so if you need good hierarchy in your game rig and you want to avoid any squash and stretch issues then i recommend this workflow and as this workflow is a really really common one we basically made it the default in-game rig tools that means that if i select my control rig and press the generate the form rig button and simply press ok that would create this exact setup that i just described now i'm going to explain all these options one by one later in the video for now let's just give a name to a game rig there are different naming conventions like root or armature and so on that will give you different effects in different game engines but for now i'll just give it a descriptive name like game rig and press ok and a game armature was extracted based on the control rig a lot of actions were taken by the add-on in the background if we look at the generation options all of these actions and more were performed by the atom the main thing that you need to understand is that the add-on extracted all the deform bones that is because we've set this option to the form it cleaned up the new armature in different ways and then it constrained each game bone to the control rig so that the game armature will now move with the control rig however the connection between the two is established only using constraints and no parenting and that is the basic principle in action another important change the character mesh was re-parented from the control rig to the game rig you can see it here in the outliner that the racer mesh is now parented to the game rig and also if i select the razer mesh and look under its modifiers you'll see that the object of the armature modifier is the game rig so basically the mesh is moved by the game rig and the game rig is controlled by the control rig now there is only one manual step that we need to take in this workflow and that is to check the hierarchy of the game rig this addon simply cannot anticipate all of the possible ways in which bones can be parented constrained and driven to create certain effects and so it is impossible to fix the hierarchy automatically but luckily that is one of the simplest steps in the process currently the game rig is constrained to the control rig using copy location and copy rotation while fixing the hierarchy it is useful to temporarily disable these constraints and game break tools has a one button solution for this it is the mute constraints button but before i click it let's see why i'm doing this if i try to rotate any of these bones in the constrained state they won't move so now if i simply click mute constraints these eye icons will be disabled and that happened not only for the selected bones but for all bones in the rig and now if i try to manipulate any of these bones i'll be able to rotate move or scale them and i'm doing this so that i can quickly check for disconnected bones and here i can clearly see that the clavicle is not connected to the spine and the arm is also not parented to the clavicle and the legs are not parented to the spine so i'll just go to edit mode in my case i can enable x axis mirror here i can parent the arm to the clavicle clavicle to chest i'm always parenting with keep offset and leg to the base of the spine now if i go to pose mode this bone moves the whole character the spine moves the clavicles and the clavicles are the parents of the arms and everything else seems fine at least for our very basic needs okay since i'm happy with my hierarchy i'll now click the unmute constraints button and that will activate the constraints again again that happened for the whole rig i should warn you to be careful and only use these options on the game rig the control rig can be much more complicated and disabling all constraints at once may not be a good idea but now the constraints are enabled again and the game rig is controlled by the control rig and this way you can animate your character any way you like and later you'll just need to bake your actions to the game rig and for that you'll be able to use the action bakery and then your character will be ready for export as i said earlier this setup supports limited squash in stretch and i'll try to show you what that means right now for more information you can watch my earlier video on the squash and stretch issue but if i for example pull this chest widget up you'll see how the bones of the spine disconnect and create the stretch this is what i call the bone offset solution in the earlier video this kind of stretch will work in most game engines the only limitation is that it doesn't really preserve the volume of your character but if it's just a tiny bit of stretch then that wouldn't be that apparent and that works for the whole character the legs can be stretched the arms can also be stretched okay i think we can move to the next workflow okay the second common workflow is for when you specifically want very nice squash and stretch action in your character and you're willing to sacrifice the hierarchy of the game bones setting it up is very easy just select your control rig click generate deform rig choose flat hierarchy and that will unparent all of the bones that will be extracted in the game rig so they'll be in no parent child relationship to each other and we also need to change the constrained type copy location and copy rotation just won't cut it because this setup was specifically designed to ignore the scale of the control bones so instead we are going to use copy transforms which will copy the location rotation and scale of all control bones perfectly to the game bones then i'll change the name again and press ok and in this case that's all i need to do obviously there is no need to fix the hierarchy because we used a flat hierarchy here is what the flat hierarchy looks like it's just all bones unparented from each other if you compare that to the control rig you can see how there is a lot of structure and you know bones being parented to each other and this lack of hierarchy is acceptable in certain projects it will really depend on the needs of your project the benefit that it brings is proper squash and stretch with volume preservation if i move the chest here and especially the leg maybe you can see how the leg gets thinner as it stretches if you compare a similar pose with the previous setup you'll see that the stretched body and the stretch leg remain thick even though they're being stretched this one has volume preservation and this will work in a game engine okay let's move to the next important feature of this add-on which is baking actions from the control rig to the game rig and that is a very important feature one of the main drawbacks of having your rig split into two rigs like this control armature and then a game armature is that you definitely need to bake your animations to the game armature before you can export it and doing this manually can be time consuming and honestly annoying however with this tool the action bakery baking becomes very very simple so i already have animations for this character i actually showed how i made these animations in one of my recent videos but i have actions for the character and they're all pushed to the nla so for example i have a run a jump animation a walk and so on and by the way you don't have to push your actions to the nla in order to use the action bakery i just have them in the nla one because that's my workflow that's how i like to organize my actions but secondly because the action bakery may tweak the nla a little bit so you need to be aware of that so in the action bakery we have a list of all of the actions in this scene on purpose i added a lot of actions that i actually don't need and so to filter the ones that i want i can expand this search field and search for control i named all of the actions on my control rig with this prefix and now i can easily find them in the action bakery then i simply need to check each action that i want to bake and in this case it is all of these sections that have the control prefix next to each action you'll see the loop option checking this option will delete the last keyframe in each action or rather it will not bake it why would you like to do that in looping actions like a walk for example the first keyframe and the last keyframe are exactly the same and that can create a hitch in the animation which is not desirable however recently i've been told that for example unreal needs this repeating keyframe to function properly and so it will depend on your needs but if you want to remove the last keyframe then tick the loop option so in this case i'll take it for run walk and maybe for the crouch walk action as well next we need to specify which armature is our control rig and which is our deform rig okay even though we extracted this game rig with this function it doesn't automatically enter these fields i need to do it manually really quickly this is my control rig this is my game or the form rig then there are a couple of options push to nla will push each baked action to the nla for the game rig unmute constraints before bake generally before you start baking you should make sure that the constraints are unmuted if they're muted then the game rig is not moving with the control rig and so nothing can be baked so generally keep this checked unless you have a very specific reason to uncheck it and then the final option is mute constraints after bake so after you bake the actions you will probably want to preview the baked actions and to do so you need to mute the constraints which temporarily disconnects the game rig from the control rig so i would recommend keeping these options to default then click bake action bakery and you'll see this pop-up here you can decide if you want to rename your actions if you simply click ok then the baked actions will get the dot 001 suffix which blender puts on everything that is duplicated if you don't want that you can create some sort of renaming pattern so for example my control actions are called control underscore so i can rename from control underscore to maybe nothing that way this prefix will be removed completely or i can maybe say g underscore g for game you also have the options to set a prefix or a suffix that is the same as the battery name functionality in blender so i'm not going to go into details here i'll simply press ok wait a few seconds and now if i scroll down here the action bakery baked renamed and pushed to the nla all of these actions for the game rig and in pose mode i can verify that the constraints are off here and so the game rig is not following the control rig it is moving on its own and now if i test one of the actions for example the walk it will be baked perfectly run jump and so on and that's how easy it is to bake any number of actions from the control rig to the game rig and that works exactly the same way regardless of your setup if i go to my other character where we extracted a game rig with a slightly different setup i can still bake these actions the same way press ok and here are the actions baked on this game right so i mentioned that the action bakery can tweak the nla a little bit so let's see what it is i'll disable selected only here so that i see the nla strips for my control rig and as you can see currently all trucks are disabled if i enable a couple of them now and do another bake with the action bakery you'll see that after baking all of these tracks for the control rig were disabled this is done by the add-on on purpose it is because if these tracks were enabled they can interfere and mix with the action that you actually want to bake and your baked animations may look wrong there's another little problem that i just noticed generally you can have the nla in almost any state that you like you can even have like a start action and stuff like that however if you select one of the strips and press tab for edit mode and try to bake then you'll get an error so i'll undo here so this is something that we may fix in the future but for now make sure that none of these strips is in edit mode before baking okay the video is starting to get long so i'm going to wrap things up however there are more add-on options that we need to explore when you press generate deform rig there are a lot of additional options there is the semi-auto toolkit which has a bunch of features so when you get the add-on along with the actual add-on you'll find more learning resources in them i'm going to go over each of these options i'm also working on a written manual if that's what you prefer and i really hope that you go over these resources because my hope is that you don't just click on the buttons of the add-on but that you understand what they do and then you'll have a nice experience with this add-on if you have any questions about the add-on if you find any bugs or have a feature request then of course you can write a comment under this youtube video but a much better way would be to join our discord server by the time this add-on is out i'm going to set up a game rig tools section in the server blender boy the developer of game rig tools is also on the server so you may be able to get feedback directly from him and if you have to you can also email me directly i'll try to respond to you but again the preferred communication tool is discord i cannot thank blender boy enough for developing this tool and also big thanks to the wonderful community around cg dive you've been really really supportive i hope you like this tool and i hope it saves you a lot of time and effort when working on your games looking forward to what you guys will create with it
Info
Channel: CGDive
Views: 16,684
Rating: undefined out of 5
Keywords:
Id: iZBx1I7vmQ0
Channel Id: undefined
Length: 26min 48sec (1608 seconds)
Published: Thu Jun 24 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.