#RiggingInMaya | Part 08 | Hierarchy & Attributes

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
we now have the main controls we need and as you can see i also added the ones to the right side too this was just the same as how we added them to the left just make sure you maintain the same orientations as the joints i also decided to update the foot icon 2 just so it more closely matches the creature's foot really quick question for you now how would you like to help support the future of this channel and keep these videos free well there are a few options one would be to simply treat me to a coffee at my coffee page as a quick and easy thank you you could also grab something from the ant cgi store or one of my other online stores like cubebrush and gumroad this is where you will also find the course files that go with this course so you can download them and follow along however for as little as 99p a month you could join the ant cgi club there are a few ways you can join you could head over to my patreon or coffee pages or or alternatively simply hit that join button below this video in short the more support i get the more time i can dedicate to creating more high quality content just for you to get more information on how you can help follow the link on the screen or in the description below okay now that's out of the way let's get on with the video okay so we have the controls now so we are a step closer to being able to build the systems which will drive the joints before we do that we're going to make sure the scene is organized correctly open the outliner and press ctrl and g to create an empty group this will be the main group for our creature so call it creature underscore rig underscore group you can call it anything you like really but make sure it ties into this character the animator may end up with multiple characters in the scene so it's good to keep things named correctly here we have the controls let's just rename the group they are already in so it doesn't have a capital letter again this is just a personal preference and move that under the creature rig group now let's organize the controls let's take all these groups and parent them to the root control now if we move the root control everything follows apart from the skeleton that is but eventually the controls will move the joints next create another group and call this do not touch we need to put it in capital so it's obvious that the animator shouldn't go anywhere near this if they do they will end up breaking the rig move this into the creature rig group two create four more groups call the first rig systems the second skeleton third geometry and the fourth visual aids move these to the do not touch group so they are now part of the hierarchy now move the root joint so it sits under the skeleton group and all the models to the geometry group we can delete this now so there we have the main hierarchy we currently don't have anything to put into visual aids or rig systems but we now have the groups for when we do have something glitter in the workshop if you wanted you could also add a blend shapes group so you can keep those in the same scene so now we have a single group with everything tucked away inside okay so with the scene organized let's look into adding some attributes these will help us control different elements of the rig and also offer some extra functionality to the animator too select the root control and go to modify add attribute with this window we can create our own custom attributes which we can then use to drive other attributes in the rig so it means everything is in one place and easier to access the first we're going to create is an enum what this will do is give us a drop down box with numerous options to choose from but we're going to use it for something different initially we will be looking at some of the other options as we work our way around the rig give it a long name of control divider and then check the override nice name checkbox now add some dashes maybe 10. what we're going to do is create a divider so we can separate attributes in the channel box which makes them easier to navigate change the first enum name to controls in capitals and delete the second name blue if i add this now you can see that we have a new attribute and it's more obvious because of the way we created it now we just need to right click on it and lock it and also make it non-keyable we do this so the animator doesn't inadvertently put keyframes on it there it has a grey tag now to indicate it's locked now let's create another enum this time call it face we don't need a nice name this time now change the options change green to hide and blue to show we are setting the first option to hide because in the attribute this equals zero so if we connected it to our visibility attributes they would be set to zero when this is set to hide they would then be set to one and visible again when the attribute is set to show okay let's add that so now we have a drop down box and this is what an enum attribute is supposed to look like when connected we can use this to quickly show and hide the face controls let's repeat that now and create enum attributes for the body and the arms and also the legs the good thing about these attributes is we can also select them all and scrub with the middle mouse button to quickly change them okay time for another divider give this enum a long name of viz divider and again change the nice name to a series of dashes we built it this way because if we just added dashes in the long name the names would clash with other attributes so using the nice name instead means we can have the same number of dashes which makes it look more uniform change the green enum to visibility again in capitals to make it more obvious and delete blue let's add that now we just need to right click on it and lock it and make it non-keyable we're going to create two more enums again just like with the face body and arms above so these will just have the same hide and show options call the first one geometry and the second blend shapes now i know we won't be using blend shapes on this rig but it's an option if you need it on your rigs we need another divider now i'm sure you're getting the hang of these now so i'm not going to explain each and every divider i create this one is going to simply be called lock i'll show this over here so you can see where i'm going before these are slightly off the screen so lock selected and make selected non-cable we need another enum but this time with some different options call this export geometry and we need three options this time unlocked wireframe and locked we will be using this attribute to affect the main models so we can effectively lock them so they can't be selected and now a final divider this will be our debug section under here we need to two visibility attributes one for the rig systems and another for the skeleton okay so those are the main global attributes ones which will affect the whole rig now we need to create some which will affect each limb select the main arm and leg control the ones that look like blue arrows we're going to start with the divider to separate the new attributes from the main ones actually let's add this to a few more controls while we're here let's also select the fk controls and also the main ik controls for the arms and legs you can add attributes to multiple nodes at once okay so we just want to call this ik underscore fk and let's add that so you see that's now on all these controls you will see why we need them on all these later in the video select just the main arrow icons and this time we need to create a float attribute this simply allows you to input a number much like the main attributes call this ik fk switch and give it a minimum of 0 and a maximum of 1. this will lock the attribute so we can't go above or below these values the difference with a float attribute is it will allow you to move in decimal numbers whereas the integer up here will give you a similar attribute but restrict you to just full numbers there we go we now have a slider which we can use to blend between our ik and fk limbs now select the main ik controls for the arms and legs okay close this for now so let's look at why i added those attributes to the fk controls2 at the moment the animator needs to select these each time they want to blend between ik and fk now i realize this is not a big thing but over time this could get repetitive and frustrating if the control isn't immediately visible instead it would be useful if the ik fk switch attribute could be accessed from anywhere on the arm well we can do this using a proxy attribute the problem is you can't currently do that from the attribute editor as far as i'm aware anyway the good news is that it's very easy to add them but it will involve some scripting again don't worry all we need is this line here we select the controls we want to add the proxy attribute to first so the fk controls and the main ik control so it's going to add the attribute here and this is why we added that divider earlier we need to find the main attribute we want to control so select the main arm control and scrub it so we can see what is output in the script editor this is what we need the full name and attribute so we can copy this and paste it next to the minus proxy flag here next to the ln flag which is the long name of the attribute give the proxy attribute a name so we can just use the same here let's select those controls again highlight this and press enter to run it and you can see the attribute has been added here so let's say i'm animating in fk and i want to switch i can use the attribute already on this control so if i set that to zero you see the main attribute is now zero two if we move the shoulder now and want to switch again we can do it here without selecting anything else there it's updated for us so this is a very useful tool to use in your rigs and unlike direct connections it keeps the main attribute free to use too whereas with connections the main attribute becomes locked let's add this to the other arm now so select the controls and update the name here so we use the right side and add that now the legs we need to update the main name this time so we use the right leg control select the controls and add those and now the left leg update the name select the controls and add those okay so the next attributes we're going to add will help us to control the stretchiness of the limbs this will be activated when the ik controls are moved away from the limbs so it makes sense to add these attributes into these controls let's select them first so both arm and leg ik controls and add another divider call this one stretch divider and create the separator line with some dashes set the first enum value to stretch in capitals and delete the blue value let's lock that and make it non-keyable okay now we need a float attribute and use a minimum of zero and maximum of one call this stretchiness this will blend our limbs so they will move between being stretchy and rigid rather than simply being disabled and now we need another enum but this will control the type of stretch the animator wants call this stretch type and we need a few different options here both which will squash and stretch stretch which will only allow you to stretch the arm and finally squash which will just allow you to squash the arm and not stretch there we go so that's the ik set up what's next uh okay let's add some space swapping options to these let's also add some to the head and eye controls too we will go into this more in a future video but alternatively you could check out the video on screen now if you want to know more basically space swapping allows part of the rig to follow another so for example with the eye controls we have here you can set these so they move with the head or remain in world space so they don't follow anything this is useful for keeping the eyes locked onto something even though the rest of the body or the head is moving so as usual we need a divider to separate this from the main attributes call this space divider and call the first option space and let's lock them and make them non-keyable now that's added to all the selected controls we can deselect the head and eyes for now next we need another enum call this follow and use the following options world cog hips and clavicle so the control will essentially be told to follow one of these other controls so it acts like it's parented to them okay done so you will see that the arm control has the option to also follow the clavicle control we also added this to the foot control too but we need to change this we don't want the foot to follow the clavicle control obviously well you might want to on your rig all we need to do is go to modify edit attribute so we can update it let's change the last option to root instead so it will follow the legs root control now let's add some options for the head this time we're going to use a float attribute so we can blend between the different states set the minimum and maximum values to 0 and 1 and call the first follow-up neck and the second orient neck these will control how the head moves so the animator can essentially keep the head level as the body moves okay onto the eyes now and we are back to using an enum set this to world and then head so we want the eyes to either remain in world space or follow as the head moves okay what next we don't really need to add everything now we can always add more attributes as we build the rig ah yes let's add some space swapping options to the fk limbs so let's select the first control on each limb and add a space divider now with the arms let's give the animator the option to stay in world space or follow the clavicle like with the ik control and the legs they can also stay in world space or follow the hips okay so that's the main attributes added and like i said earlier we can add more later if we need them or we can easily remove them if we find that we don't so now let's make the attributes control the hierarchy so we can control what's visible and what's not and we can do this with the attributes we added to the main root control open the connection editor and load the root control into the left side so down here we can see all of our custom attributes first let's set up the face attribute all we need to do is connect these to the groups here which will show or hide those controls this creature doesn't really have a face rig but we can use this to show or hide the eye controls instead select the eyes group and load it into the right side okay let's disable non-keyable so we are just left with the main attributes that's better and all we need to do is connect it to the visibility attribute so there the controls have vanished but we can control this now with this attribute okay let's do the same with the body attribute and connect that to the torso group's visibility attribute now the arms so connect that to the arm groups and finally the legs there we go okay so next we simply make the geometry attribute control the geometry group's visibility and the blend shapes attribute can you guess controls the blend shapes group you can probably guess what the rig systems and skeleton attributes control now too there we go now this is very easy to set up but the animator can now quickly show and hide parts of the rig so they can focus more as they animate these aren't just for the animators though as they will help us as we continue to build the rig let's bring everything back we have one more attribute to wire up and that's this one export geometry let's hide the skeleton for now so as the animator is well animating we just want them to select the controls and nothing else it can be frustrating if you're accidentally selecting the model each time you're trying to change to another control so what we can do is use this attribute to lock off the geometry load the model into the right side of the connection editor and now we need to see the non-cable attributes open the attribute editor and look under the display tab and then drawing overrides we have lots of options here to control how the model is viewed if you remember we use these previously to control the colour of the controls we just need this attribute here display type you see it has options for normal template and reference all we need to do is connect our export geometry attribute to this override display type attribute we can no longer change this here because the export geometry attribute is now in control so now with it set to unlocked it's using the normal option so the model is selectable if we change this to locked it's now using the reference display type meaning we can no longer select it swapping to wireframe now sets the display type to template so we essentially get the wireframe it's also important that you enable drawing overrides here or this won't work okay let's connect the head now so load it into the right side and choose override display type and the horns let's switch this to wireframe so we can see what's left ah yes the eyes let's connect those now so you would need to go through and do this to all the models to ensure they are locked off correctly if you fancy experimenting with a bit of scripting you could always update the for loop which we used earlier in the course when we updated our rotation orders and change that so it will update all the models for you okay so now we have the scene organized so in the next video let's start building some of the base rig systems and we're going to begin with the control joints okay that's another video over thanks for watching right to the end and make sure you also check out some of the other free videos and courses that i have available you can find links to all these on the screen now and in the description below remember to help support future content and keep these videos free visit the ant cgi store or join the ant cgi club alternatively if you would just like to show your appreciation for these videos why not treat me to a coffee at my coffee page again the link is on the screen now and in the description below thanks again for watching this is ant cgi signing off and i will see you on the next one you
Info
Channel: antCGi
Views: 887
Rating: undefined out of 5
Keywords: rigging, maya, autodesk, maya3d, rigging in maya, utility nodes, rig, node editor, nodes, Build Controls, 2019, maya 2019, Spine, Head, Pelvis, Waist, Abdomen, Sternum, Shoulders, gamedev, game art, game development, game rig, 2022, maya 2022, control icon, attributes, custom, enum, visibility, hierachy, groups, display, overides, stretch, float, int, proxy, proxy attribute, mel, script
Id: aebCl5oFY18
Channel Id: undefined
Length: 28min 32sec (1712 seconds)
Published: Wed Dec 01 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.