#RiggingInMaya | Part 5 | Basics | IK & FK | Limb Rigging

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
here we are at the fifth video in my rigging in Maya series over the last four videos we looked at the fundamentals behind any rig so now it's time to move on a step and start to investigate some of the basic systems in this video we will take everything you've learned so far and put it to the test as we build an arm rig not only will this include the joints of controls but it will be the perfect opportunity to look at inverse and forward kinematics also known as eye care and FK while creating a rig which will blend seamlessly between them so before we dive in and start to build our arm rig I think it's important just to explain the differences between AI K and FK or forward kinematics and diverse kinematics now this is a model we're going to be using throughout this video and possibly we'll use it on other videos as well it's just a basic base mesh it's not skinned at the moment so I'm just gonna hide it because it might seem a bit confusing if the rig is moving but the model isn't so here we have the arm and this is set up using FK as you can see on this handy little label here and we can switch between AI K and F care just using this slider now FK basically evaluates everything forwards or as you would expect in this case as the joints of being built so in order for us to reposition the wrist for example we well if we were going to animate the arm we would have to animate the shoulder then the elbow and then we could animate the rest so as you can see it's animated in a forward motion now let's say we wanted to keep the wrist in a certain position it would be very difficult for us to then because we'd have to unmake the shoulder and then the elbow you know if the L if the shoulder moved back like so we'd have to compensate by animating the elbow and then the wrist you know and then the wrist isn't in the same position here then so then we've got to compensate even more as you can see it can be a bit of a nightmare and you will never get that wrist to lock into place and that's the problem with forward kinematics now forward kinematics is really good for just doing you know you know you can get some really nice of arcs when you're animating as you can see so as the arms swinging you can use forward kinematics to get some nice secondary animation on the elbow and on the wrist so forward kinematics does have its place but there are situations where like I say you need to plant the wrist and that's where I care comes in so if we switch to AI K as you can see the controls are completely different for AI K we've only got one for the arm one for the wrist sorry and we also have this extra one for the elbow now as you can see as we move the arm control here which is just moving the position of the wrist the elbow and the shoulder are following along with it and this is because it's being evaluated in Reverse whereas with forward kinematics it was being evaluated forwards so from the shoulder to the elbow to the wrist inverse kinematics is being evaluated so well backwards so from the wrist to the elbow to the shoulder so that means we can just position hand wherever we want what it also means is that hand will be locked in place and this is also used for creating walk cycles so you'd add the same sort of rig to your legs and then that means you can plant your feet as you're walking so if we were to move the shoulder like so as you can see the wrist is not moving so the rest of the character's body could be moving but the wrist is staying exactly where it should be and this is useful if your characters say climbing a wall and you need to plant where the hands are going or if they're riding a bike you know you need the hands to stay on the handlebars so I don't think I wouldn't say that there is a superior version I can FK above extremely useful when it comes to animation and you know there are areas where you would use both now this extra control all this does is this allows you to point where the elbow is so it just gives you that extra little bit of control there and we're going to see how we set that up later on in the video so yeah so that is just basically what the difference is between AI K and FK so now you've got that in your head and you've actually seen the rig that we're going to build you know being used let's now move on and start to build it so back to the base mesh now because we need this to help guide where we place our joints and that's where we're going to start we're going to start by just building the base skeleton and you can always refer back to the first video in this series where I explain a bit more in depth about joint creation and you know all the different elements associated with it so we're just going to our joint creation tool and we know that we need our joint set up a certain way we know that we want Y to point down the joint so we're going to set that as our primary axis our secondary axis is going to be the z axis but we also know we want this to point forwards so I'm going to set this the secondary axis world orientation to Zed what I'm also going to do and this wasn't covered in the initial video is I'm going to use projected centering now what this does and this is quite clever is as you if you are working with a mesh as you place your joints Maya will automatically detect where the model is and place the joints sort of in the center so as you can see as I'm placing these it's working out roughly where the center of the armies and it's placing the joints there for us so that's just a nice little tool just to save a little bit of time as you are building so there we have our three joints for the arms so now let's start to look at adding in some basic joints for the fingers and the thumb and again projected centering is just helping to position those joints in the rough center of each digit there we go so I'm using the model to help guide me because I can see on the model oops that's just missed the model there on the actual model itself I can see where the joints for the finger should be there's extra geometry in there there's been topology added in to allow for the fingers to deform so I can use that to guide where I'm actually placing my joints so there I have the fingers and I created those separately because I need them all to be parented to the wrist so there we have our roof arm joints and finger joints but the problem we have now is the wrist orientation isn't correct because it's pointing down towards the thumb whereas we want it to match the wrist the elbow orientation sorry so now let's look at fixing that so I'm going to UM parent the thumb I'm going to open the Orient joint options and I'm just going to set it to orange oint to world and click apply so now I've done it with the wrist I'm just going to go through and I'm going to fix the end joints just so everything is nice and neat and orientated correctly so now we have the basic joints in what I want to do is I want to add an extra level of joints and these are the metacarpal joints and what this will do is this will allow you to you know if you are characters holding a ball or something this will allow you to curl the hand end you know it just gives you an extra degree of freedom if you move your fingers around you will see that they don't just move from the knuckles you have joints the metacarpal joints which go from the knuckles down to the wrist and these move as well so it's important to if you have the flexibility of you're adding these joints in if you have the joint budget I would definitely recommend adding these in as well so I'm just going to duplicate the wrist joint I'm going to unparent it and then I'm going to create a copy of this for each digit you now the orientations of these are gonna be correct because they're going to match the wrist but we can fix those later on I'm just adjusting them to get them into the right position so that we can get the right curl in the hand and then I'm just going to parent each finger and the thumb to that metacarpal joint and I'm just pressing P and P will parent one thing to another now because those metacarpal joints are now parented to the fingers I can use the orient joint tool to fix the orientations because we have something for the joint to point out or our primary axis to point towards so I'm just setting up exactly as we did when we created the first original skeleton joints so with Y as my primary axis Zed is my secondary axis and we want the secondary axis to point forwards and in world space Z is pointing forwards so we set secondary axis world orientation to Z 2 and then I'm just going to go through and click apply and as you can see that is just fixing those orientations and aligning them correctly so they're pointing towards our fingers and the thumb and as a final step just parent all those back to the rest and now the wrist rotates and moves correctly the problem we have with some of the joints now look bigger than the others so let's just quickly clean that up I'm just gonna select the hierarchy and then the channel box just adjust the radius and that will fix all of those bringing them all in line so they're all the same size now one thing that I must mention at this stage is that you have to have a bend in the elbow or if you are building your leg you have to have a bend in the knee now this is really important because when you're adding ik' later on and using a pole vector constraint that bend will dictate how the arm bends and the direction that the elbow points in so if you haven't got a bend in there the eye cages won't work if you have the bend pointing down what's for example then when you move the eye care control the elbow will Bend down which won't look right so it's important to get that little angle in there and it can be just a small angle can be a larger angle you just need something in there just to dictate where the eye care is going to you know point towards so looking at the joints they all look quite good in decent position the only one that's not in the right position is the clavicle joint so I'm just going to select it I'm going to press insert and that allows me to go into edit mode and now I can move that joint around independently if you try and move it around normally then all the joints beneath it all the child joints will try you know and follow it so you pressing insert allows you to move that joint around without affecting any of the child joints now the problem with doing this is as you're moving that around the orientation well the rotational axes are going to become misaligned so it's important to just go back in afterwards use the orient joint tool and just fix that so there we go they're in a much nicer position so just quickly looking in the outliner now and obviously we have a problem because all the joints we've created it just called giant one joint - you know right up to Johnny 23 Jake 24 and this just won't work we need to maintain a good naming structure while we're building our rig not only does it make it a cleaner rig but obviously if somebody else is looking at your rig they're not going to know what's what what also means is later on if we're using tools like if we wanted to mirror this skeleton we need the names there so we need the prefix of L underscore so that we can mirror it across and Mae will automatically replace L underscore with Wright underscore it also means that if we were doing some scripting we need the names in there you know just so that we can search for things replace things issue it just it just makes common sense to whenever you make something make that spend the time to just go through and name them so I'm just gonna fast-forward through this because this is quite boring it's just me renaming things now what you'll notice is I give them specific names so the metacarpal joints I've added meta on to the end and the end joints I've also added underscore end on the end and again this is so later on if I need to do something to all the end joints maybe maybe the skeleton is slightly over budget so we don't need those end joints in there I could just go through and just do a search for the end joints and then delete them you know end joints don't tend to be weighted to this to the mesh so you can easily delete them without affecting anything else so that's everything name nicely so what I'm going to do now is I'm just going to select the hierarchy and go to transform display local rotational axes and I'm just going to give it one last look just double check everything is aligned correct everything is going to rotate as it should before I move on so one point that I did notice and I again I covered this in previous videos but I'm just going to go over it again now is if we rotate the finger around the z axis as you can see if we rotate the thumb around the same axis it doesn't rotate correctly so we need to fix that now and it's important that the fingers and the thumb all curl around the same axis in this instance it's the Zed rotation so I'm just going to component mode and I'm just going to right click and on the question mark and select local rotational axes now it's sometimes a bit tricky to select them but as you can see now I've managed to select those rotational axes and now I can rotate those so that we can get the thumb to curl correctly around that z-axis you and there we go everything's curling in around the same axis which just makes for a neater rig so just check the other the finger joints just make sure everything is set up it's important that this base rig and this is this is the skeleton while I said base rig it's actually the base skeleton it's important that this skeleton is finalized because we're going to use this as a basis for our eye care and our FK arm so I'm going to do now is I'm just going to duplicate this arm and then I'm going to delete the fingers from the copy because we don't need those extra fingers in this rig at this time and because this is the I K version of the arm I'm just going to add an underscore I care to the end as you can see we've only duplicated the three joints the shoulder the elbow and the wrist or the humerus the radius and the wrist as I've called them so now I'm just going to duplicate those again but this time I'm going to call them FK because these are going to be the FK arms and the idea behind this is the main arm skeleton is going to follow either the eye care skeleton or the FK a skeleton so there we have our three main skeletons now I'm just going to snap those back into place we need our main skeleton to follow the eye care and the FK skeleton and we also need the option to blend between them so what I'm going to do is I'm going to use a parent constraint so I'm going to select the eye care humerus the FK humerus and then the main skeleton humerus and I'm going to go into a go to constraint parent and I'm going to turn off maintain offset because we wanted to stick to exactly the position of the I K or the FK skeleton now I'm just going to repeat that and do the same for the radius and the wrist so now if I move the IKE a skeleton away you will see that the the bear skeleton no matter where I position that I case skeleton or rotate it it's always going to lie in between the I K and the FK skeleton so let's just snap those back into place as another tip when you've created your base skeleton right click on the root and go to set preferred angle this basically just styles that pose so that you can quickly get back to it by right-clicking on the root again I'm going to assume preferred angle I've also found in the past that sometimes if I'm setting up an eye K or alike and it doesn't bend in the right angle or it doesn't deform the way that I would expect it to this is because I haven't set the preferred angle on the base skeleton so it's always good just to add that in when you can't because it could solve issues further down the line so now we have our base skeleton cell and we have the I care joints in there and the FK joints the base skeleton is moving between the two we can start to think about adding in soup and controls so I'm just going to hide some of the extras that are in the scene just going to go to create NURBS primitive circle now for the applique I'm just going to use some really basic circle controls I'm just going to scale this down and then I'm just going to snap it to the shoulder so now it's in position I'm gonna freeze the transforms just delete the history on that so that's in position and setup now I'm not going to rotate it just yet I'm going to name it first just so we know what control is and again I like to make my naming obvious so at the end of each control I'm adding underscore ctrl and I'm just going to duplicate this for the elbow and for the wrist and obviously rename them now as you can see I've added FK into it too which just makes it obvious that these are the FK controls you and just to clean things up even more I'm just gonna freeze the transforms on those extra controls as well so we have our basic controls but at the moment they're not orientated correctly we want them to match the orientation of the joints that they're going to control and again I've covered a lot of this in more depth in my earlier video so what I'm gonna do is I'm just going to group each of these controls and send to the pivot on those groups just so that the the pivot point for the actual groups is where the center of the joints are now I'm going to select each group and I'm going to pair and constrain that to the FK joint and what that's going to do is that's going to adjust the orientation so that it matches the joints so as you can see the controls are now pointing exactly the right way now I'm just going to delete those extra parent constraints because we don't need them anymore and for this to work correctly as FK we want the elbow to follow the shoulder and the wrist to follow the elbow so I'm just going to adjust the a hierarchy now so that each control sits underneath its parent control you and there's a last step I'm just going to rename those groups again just keep everything neat and tidy and I'm adding underscore offset onto them because these are offset groups because they're storing those offset rotation values which mean that controls are nice and clean and the rotation values and translation values are all still set zero it also means later on if I need to do something to those offset groups you know what I tend to do is I will go through the rig at the very end and just lock off all of those offset groups so the animator can't touch them and I could just write a script which goes through searches for underscore offset and just locks them off for me without me having to go through and pick my way through the outliner you know and you know do them all one at a time so now we have the controls they don't actually control anything so now let's make them control the FK skeleton so I'm just going to select the control and then the joint that is controlling and I'm just going to use a parent constraint so the radius and the radius FK skeleton and down to the rest now it can control the FK part of this rig using the controls because ideally at the end of the rig when it's being built and you've finished you want the skeleton to be hidden so all the animator can see are the controls so as a final step I just want to change the color of these so it's more obvious what they are so I'm gonna select control open up the attribute editor just go down to display drawing overrides and enable the overrides I can then select a color from the slider below and I think we'll just make it yellow now because we've done the shoulder what control all the child joints inherit that color as well so we don't need to go through and do those so now we have the FK controls in and working and all wired up let's turn our attention to the IQ side of it and the IQ control and it's important to build controls that look obviously different so that at a glance the animator knows that they're working either with FK rik controls bar if you are looking from the side for example you can see exactly what controls are visible it's also good to have the left hand side controls a different color to the right hand side as well again it just makes it obvious for the animator which controls a witch and it makes it quicker and easier for them to select things and start playing around with them and animating them so this time I'm going to use the curve tool and I'm actually going to build a control from scratch so I'm using the Edit point curve tool I'm just opening the options and I'm going to set the curve degree to linear now this is because I want this control to be quite angular I don't want it to be soft and curved so I'm just gonna hold down X and this will allow me to snap to the grid and I'm just gonna start to roughly add points to create my control so for this control I basically want a flat control with four arrows pointing out in each different direction so this isn't exact but I can edit it afterwards I'm just roughly adding in the points that I need and then I can pull them around to get the shape that I want you yeah so this definitely isn't the shape but like I say I couldn't just edit it afterwards so it doesn't really matter that's better nearly done last couple just add one at the end and press return so now I can just edit these just to get it to look a lot better and again holding down X just to snap those points just clean this up so about right I think the arrow at the top just needs to be extending a little bit that's better as you can see it didn't take long just to build that one control so I just need to send to the pivot so that's going to be the control which is just gonna be the one that you select to move the wrist around and position the hand and you know dictate where the IKr moves so I'm just going to call that left arm IKEA control I'm calling it left arm because it kind of controls a whole arm so now I need another control and this is what I can I'm going to use to add on the ability to blend between I K and FK and again I want this just to be maybe two arrows just to indicate that it's got a sliding control on it maybe obviously you couldn't just create whatever you want it's a little bit too big so I'm just gonna make it a bit shorter so that's those two so I'm just going to rename this the left arm control because that then can have all the various controls associated with that arm so now I'm just going to snap these into position and then I'm going to adjust the scale just to get them roughly the right scale that we need so that looks roughly about the right size so freeze the transforms just to clean it up so now I just need to fix the orientation in exactly the same way that we did with the FK controls so I'm just going to group that control and then I'm just going to pair and constrain it to the I care wrist where's it gone that's because I grouped it but then I didn't send to the pivot so let's just go back under sent to the pivot this time and try again constrain parent there we go that's fixed it and it's fix the orientation to let's rename that again using underscore offset to indicate that it's an offset group now let's change the color maybe this one will use red perhaps and again that just mean makes it more obvious that it's a different control so now let's do the same with the arm control so I'm just going to snap it to the wrist I'm just going to rotate this one manually because this doesn't need to match the orientation of any particular joint this is going to be a global control for the arm so I just want it roughly well in a rough position next to the arm so the animator can easily see it so that's about right so freeze the transforms and again I'm just going to change the color again maybe use blue that's it so that's out nicely so we've got our control for our eye care and we have a global control for the arm so let's hide the FK controls for now just so we can focus purely on the eye care you so we do need one more control and as you saw at the beginning of the video we needed a control so that we could move where the elbow is pointing to so what I want is kind of a pyramid shape control you know just so we can get the arrow pointing towards the elbow so just trying to remember how I created the last one trying to create it from one curve and then you don't have to mess about having to parent the shape nodes and things so let's move that up because we want a point it's not gonna work don't know if that's going to work actually okay let's try again so we need four points for the base then we need that to line up that's it and then we need a point in the middle which we can pull up and that gives us our pyramid that's much better and it just used one curve as well so I've renamed this left elbow control sent to the pivot let's snap that back to the elbow because that's where the control is needed I'm just going to rotate it around and if you hold down Jay when you rotate it will snap to 45-degree angles or whatever you have set up in your rotate tools Frieza transforms again just to keep everything clean and let's scoop that a color as well and we'll give it the same color red because it's the part of the IKr so it makes sense for it to be the same color as the eye care arm control and we're just going to keep that in the same position as the elbow for now so now let's add an eye k handled now when creating an Ikea handle you have a couple of options a single chain solver and a rotate playing solver so the one we need is a real tape playing solver and that will allow us to dictate the rotation of the I K so that gives us the ability to use that elbow of control in there whereas with a single chain I case Oliver you don't have that option it's just a basic eye catching and we're just going to use the default settings now I'm going to select these in the outliner because I can't see the actual joints in the viewport now I could hide the base skeleton and then select the shoulder and the wrist in the viewport that would work fine but I'm just trying to save a bit of time here so I'm going to select the left humerus I care then I'm going to hold down shift and select left wrist okay so as you can see we now have an eye care handle and we also have you can see three lines three green lines so there's a line going from the shoulder to the wrist this is the main okay and then there's also a green line going from the wrist to the elbow and then from the elbow to the shoulder and this is the vector that the eye K is going to working and like I said earlier on this is why you need to have that bend in the elbow or the knee or whatever it is that you're creating because it needs to know where that plane is that it's going to bend a bend through so as you can see as I move that I care handle around now the arm is trying to follow it now obviously at the moment the arm is still set to always be halfway between I K and F K so we're going to fix that later on so let's get our control to actually move the eye kit handle and to do that we're just going to pair in the eye care handle to the left arm eye care control and now let's rename that to left arm I care handle you so you can see as I move around the eyecare handle the elbow we don't really have any control over it just yet and the elbow is always just gonna sit behind you know in the direction that it was created so now let's add in that pull vector constraint which is going to allow us to use the elbow control to dictate where the elbow points so before that I'm just going to keep things consistent and I'm going to add a offset group to the elbow control and these offset groups I'm adding a lot of them in and they're useful as you've seen earlier to allow you to change the orientation of a control without actually adding any rotation values are changing the rotational axes or the rotational pivots but they also have another added benefit and that is that you can then use those offset groups when you're creating your difference of world space local space constraints and I'm getting a bit ahead of myself here but what I'm trying to point I'm trying to get across is these offset groups are quite valuable later down the line so it's good to add them in so let's get back to the pole vector what I'm going to do is I'm just going to select the left elbow control and then I'm also going to select the left arm I care handle and I'm going to go to constraint pole vector now they we don't need to change any options or anything we just need to create it as you can see as I move it around the elbow is trying to follow and always point to that control now [Music] yeah so that works quite nicely we have full control over the arm using AI K and again because we added in that bend in the elbow initially when we created the joints we dictated the actual vector or the plane that the pole vector is going to use to be able to dictate where the elbow is going to point towards so again adding in that bend is very very important so if we bring back our Africa controls now we can see that things are getting a bit complicated at the moment we can see the Africa controls we can see the IKEA controls we can even see the I care handle so now we need to add in the ability to switch between I K and FK oh well I say switch but it's more of a blend because you can blend between the two but also while we're doing that we can then control the visibility of the controls so when you're using FK you only see the Afghan controls when you're using I care you only see the i-kick controls so to do this we need an attribute so I'm going to select the left arm control and I'm going to add an attribute called I k FK switch and I'm going to give it a minimum of 0 and a maximum of 1 so we're just going to add that and now I can slide between zero and one and this is going to give me the ability to blend between the IKEA and the FK so I'm just going to open up the node editor I'm going to add in our control because we need access to that new attribute what this attribute is going to do is it's going to control the parent constraints which are constraining our main skeleton to the IKE a skeleton and the FK skeleton and what we can see is on each parent constraint we have an FK w 0 and an ikw 1 attributes and this is the weight controlled attribute for that parent constrain so what we do first is we're going to connect the ikf case which attribute to I to the I K weights so to the wrist to the radius until the humerus we can see that there's a little yellow tag which indicates that that is now connected an Excel because if we look at our attribute that's set to zero so we can blend between zero and one and those weight values on the parent constraints will update as well now the problem is if we add that to the FK as well we're just going to get the same value in both so the left wrist I care will be one but the left wrist FK it will also be one instead we always want the FK to be the opposite of what the I care attribute is so to do this we can use another utility nerd so I'm going to press tab and I'm going to start to write reverse and then it will bring up a list of possible nodes that I can choose from and I'm just going to select reverse I'm going to rename this to left arm ikf case which just so we know exactly what the node is and I'm going to connect the main ikf case which attribute into input X and then the output X I'm going to connect those to each one's of the FK attributes on the parent constraints so what the reverse node will do is it will take the input x value and it will reverse it giving you the output x value so as you can see now if we select a constraint and look in the channel box Aiki is now 0 whereas FK is 1 if we adjust it now IKS 1 and FK 0 just adding in that reverse note was given as the built-in the ability to you know reverse the AI kfk attribute value so that we can blend between the I K in the f K now the problem is all the controls are still visible but we can use these same attributes to control the visibility so I'm going to do is I'm just going to select the offset groups of our controls so we have the base FK offset group got the left arm eye care control offset group and they left elbow control offset group and I'm just going to use my middle mouse button and drag those over into the node editor just open these up so we know that the reverse node outputs the values for the FK controls so I'm just going to connect output X to the visibility attribute on the left humerus FK offset group and now the ikf case which I'm just connected to that directly to the visibility attributes for their life dharmaiah care and the left elbow I care so now as we blend between the two you can see it shows the appropriate controls so the animator is not going to get confused by what controls are actually active because you can blend between the two so there we have the arm setup it's got I K its got F gear you can blend between the two we have controls in there so there's one more thing we need to do and if I go to FK I can rotate the wrist and the wrist is going to rotate following the control but if I switch to I care now if you can if you see if I rotate that I care control the wrist isn't following so we need to add in that functionality as well but all we need to do is we need to get that main left arm I care control to control the left wrist I care joint so I'm just going to select the left arm I care control I'm going to select the left wrist I care joint and this time I'm just going to use an orient constraint and that just means that the rotations from that control are going to rotate the left wrist I care control right sorry the left wrist I care joint we're not using a parent constraint because we don't want that left wrist I care joint to actually move away from the skeleton and we don't we don't we're not using a point constrain because for the same reason we don't want that joint to move away we only want the rotations so that's help now when it rotates and it works really nicely so now we can just start thinking about adding in a few more extras again which just make it easier and more intuitive for the animator so we have this left arm control which is a global control for the left arm but if you're animating and moving around you know and you've got a few of these controls in there we can't really see which limb that control is going to be controlling and what I find useful is sometimes just to add in a line which connects that control to that arm so at a glance an animator can see straight away that that arm needs you need to use that control to control that arm so what I'm going to do is I'm just going to create a line and I'm using the Edit point curve tool again again holding down X I'm just going to create two points press return and there we have our line so I'm just going to snap each point and it's not one to the wrist and then I'm going to hold down C which will constrain it to the curve and then I'm just going to middle Mouse drag and that will connect it well that will lock it to the position of our control so there we have the line but at the moment it's not going to follow anything or go anywhere if I animate their arm it doesn't do anything so just gonna hide the base I care and FK arm for now just so we're working with the base skeleton what we can do is we can select that point go to deform and create cluster we then end up with a cluster handle so while we're here let's just rename this just so we know what this line is we'll just call it left arm control this just because it's a visual age rather than an actual control so we have our cluster handle but we want it to follow where the wrist is but we want it to follow the actual the wrist of the main skeleton not the IKr the FK so all I'm going to do is I'm just going to parent constrain that cluster handle to the left wrist now if we move the wrist around the line is always going to point to it so now we want the main control to actually follow the arm as well it makes sense for it to follow where the arm is moving rather than it just being floating off in space and being not connected at all so I'm going to create an offset group for this control just as we've done before press ctrl-g to create Group Center the pivot and then I'm just going to rename it same as the control but with offset at the end I'm then going to use a parent constrain and constrain it to wherever the wrist is moving so there that control is now following around and moving wherever the wrist moves and again this just makes it a bit more intuitive for the animator because as the arm is moving around the control is always closed so now I'm going to select the curve point at the opposite end of the line we created create another cluster and then I'm going to parent that under the left arm control offset group as well so now when we move the arm around that line is always meaning that thee that the control is always pointing towards the arm or the wrist of the arm that those controls are relevant to and again this just makes it a cleaner and tidier rig and it just makes it more obvious for the animator which controls control which limb or which part of the rig so now we have those main controls in let's go another step further and actually add in some basic text and what this will do is as the animator is switching between AI K and FK it just switches the text between I K and FK and it just gives another visual representation of how well of the controls are available and the controls are being used so I'm just going to go to create but this time I'm going to go down to type you so I'm just going to change this to I K so what I'm going to do is under geometry I'm going to go to mesh settings I'm just going to click create curves from type and that is just going to give me a group with the curves in which will give me the text I K so I'm just going to delete the history delete the type mesh and that's just going to leave me with the curves so I'm going to do the same again but this time I'm going to create one that says FK so again just click create curves from type delete the history on the type mesh and then I can delete that type mesh which just leaves you with the curves so before we move on again just to keep everything clean and tidy I'm just going to rename everything so we have I care text FK text and then rename the actual curves you so let's scale these down so we can get them roughly into the right position there we go because what's going to happen is as we blend between the I key and the F care these are going to switch so we'll only ever see one but we just we want it to be nice and aligned and neat and tidy let's just freeze the transforms on that just to clean it up and let's parent it under our left arm control offset group and then back to the node editor so we still have nodes that we were using previously in here so let's just remove the ones that we don't need so we still need the the main left arm control and we need the reverse node so let's drag our groups in and we know the ikf case which controls the I care part of the rig and we want the output X from the reverse node to go into the FK part and what we can also do if we want we can go in and change the color so it matches that part of the rig so with I K we wanted it to be red so if we we can now switch to FK we see the text also changes so let's keep that consistent and change it to yellow there we go so we now have a nice I kfk um well a limerick because obviously you can use this for a leg as well so as another option what you can always do is this text and the line that we've created perhaps you don't want the animator to actually select those so what we can do instead is we can rather than give it a color we can then reference those out which means that they're non selectable so in the same place where we have dictated that we wanted this to be yellow we can just change the display type to reference now that changes the color to black but what it also means is that it's non selectable so the animator is not going to accidentally select these move them around or add keyframes onto them or maybe delete them and again it just means that the rig is cleaner it means that it's also safer at the end of the day you only want the animator to be able to touch the controls that they need to control the rig you don't want them to accidentally going and start selecting groups and other nodes so what we can also do is we can start to go through and remove the attributes that we don't want the animator to control so on the left arm control we only want the animator to be able to adjust the ikf case which attribute so let's select that let's select all the main attributes right click and go down to lock and hide selected so now the animator can't select that it can't move it they can't animate it all they can do is adjust the ikf case which now you could lock the visibility as well but I sometimes like to leave that available because later down the line I might add in an extra option for the rig where you can control the visibility of different parts of the rig so let's now go through and just start cleaning up some other parts of the rig so on the main idea control all let's lock and hide the scale attributes the same with the elbow control lock and hide get rid of that scale attribute because we do on the animator to be able to animate the scale I'm gonna move that elbow control back as well because we want it further away from the elbow so I'm nervous ain't a problem and this is just with the way that I've set this up with a left arm control I've actually used a parent constraint which means it's inheriting the rotation and the position of the actual wrist joint and we don't want that we just want it to float near where the armies but we don't want it to be influenced by the rotation or anything like that so I'm just going to try breaking the connections for the rotations now that doesn't really work because it's still moving around although it's not rotating it's still moving around with the wrists so let's get rid of that parent constraint and let's try something else let's try a point constraint you so that works a lot better that control is now moving and following around with the actual wrist but we can also rotate the wrist and it's not going to be affected so that we have the arm using it in AI K we can unblended and we can animate and pause it than if we wanted to we could animate it blending back to I K and that works really nicely we've got our eye care and FK arm set up we've built our own controls we've added in some extra you know visual aids which are going to help the animator and it's going to you know show them when they're working in I care when they're working in FK you know it's just quite a nice it's a basic setup but then this part of the rigging in main series we're just covering basic systems so let's just now go through and do a bit more cleanup so I'm just gonna select my offset groups and again I don't want the animator to be able to accidentally pick work up select these and then animate these instead of the actual controls so I'm just going to select those right click and lock and hide those selected attributes and that locks those off so that nobody can accidentally touch them you so there we have our i k and FK arm set up just bring back the mesh just so we can see because obviously we want the controls to be visible on top of the mesh we don't want them hidden inside the mesh and that looks like it's that's okay so what you could do as an extra step is go through and follow the exact same steps but build in a leg rig you know something like this you know a very basic you know rig setup you've got the eye kfk blending in there you've also got the pole vector you've got the knee control which again was the same as the elbow control but feel free to just repeat the whole process and building a leg rig now it's important that you build in the full arm and the full leg because from here what we're going to do is we're going to explore building a hand rig adding in controls for the metacarpals and the fingers and some extra controls and then after that we're going to look at adding in a foot rig you know giving you the the foot roll and things like that as well but as far as the icao FK video is concerned i think we've come to the end of it now I hope you've enjoyed it I hope we've learned a lot from it please leave me comments below if you found this useful and if you want more videos like this the more feedback I get the more time I'll try and dedicate to creating more videos like this and as always please like the video and subscribe the more subscribers I get the more time I will be able to dedicate to creating these videos so that's it for now goodbye and I will see you on the next one [Music] you
Info
Channel: antCGi
Views: 91,556
Rating: undefined out of 5
Keywords: rigging, maya, autodesk, maya3d, rigging in maya, utility nodes, connections, rig, finger, multiply divide, node editor, nodes, IK, FK, Inverse Kinematics, Forward Kinematics, Arm Rig, Leg Rig, Projected Centering, Axis, Joint Orient, Build Controls, EP Curve Tool, Contraints, Rig an arm in Maya, IK Handle, 2019, maya 2019, gamedev, game art, game development, game rig, game rigging
Id: uzHn_4ByyjY
Channel Id: undefined
Length: 65min 47sec (3947 seconds)
Published: Wed Jul 17 2019
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.