#RiggingInMaya | Part 05 | Skin Binding & Editing

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
okay you now have the skeleton ready so let's look at making it drive the model before we do i want to point out a few small changes i made since the last video previously we parented the hand twist joints to the hand joints you can see that they are now instead parented to the lower arm joints just like the other twist joints this just makes sure they will follow the lower arm and not be controlled with the wrist you can see the same here on the opposite side i also did the same with the foot twist joints making them instead follow the calf joints so a small change but it will make a difference later in the rig 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 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 let's get back to skinning so what we need is for the model to follow the skeleton so it can deform and be animated and then eventually exported and used in game oops looks like i left some history on the model i'll just delete that a quick way to get back into the main pause is to right click on the skeleton and go to assume preferred angle this will only reset the rotations though so remember at this stage to not adjust the translations on any of the joints even though we have this full skeleton we don't want every joint to affect the model some of the joints are here to simply help the others deform the correct way you have to remember that this is a real-time asset so we have to be economical with what we use the more joints that affect the model the bigger the impact is on the engine plus there is no point having a joint skinned when it does nothing to the model okay let's open the hierarchy and take a look and we can select all the joints quickly by going to select hierarchy now deselect the root joint this is used by the engine but not the model so this doesn't need to be skinned i'm also going to remove the cog joint from the selection we already have another joint in the same place here the pelvis joint so that will control the model next remove the upper arm joints from the selection again we don't need these skinned because we added the extra twist joints here which will control the shoulder area for us we can now also remove the hand to twist joints too okay let's deselect the opposite side the upper arm and the hand we can do the same with the legs so remove the thigh joints and the foot twist joints there we go so those are the only joints we want skinned it's important to add that we can always add or remove joints later in the rigging process if we need to so what we're doing now isn't setting stone what i would recommend doing now is storing these joints in a selection set go to create sets quick selection set let's give it a name bind underscore joints what we can do now is create the set or alternatively create a button on the shelf which will select these joints for us for now just click ok to create a new set you can see the set down here all i need to do now is right click on it and choose select set members that will quickly select those joints again if we open it up you can see all the joints inside the set here so when it comes to rigging you may find that you need to detach and reattach the model a few times as you're testing how it deforms this could be to add extra features to the rig later or fix bugs so it can be useful to have the ability to quickly select these joints it may not be such an issue on something like this but if you're working on a high end rig with a lot more joints it can be a life saver okay with the joints selected let's look at skinning the model add the model to the selection go to skin bind skin and open the options i'll reset this as you can see we have lots of options here first we want to change bind so it will only bind to the selected joints we don't want the full hierarchy we also want to change maximum influences to 4. this dictates how many joints can affect each vertex and again the more influences you have the bigger impact it will have on the game engine four is usually the amount to use but it depends on the target platform so it's always best to check if you have to change this later on it will involve repainting a lot of skin weights so it's good to know from the outset let's apply this and see what we get so the first thing we see is that half the skeleton is now colour-coded this is an option in the settings but it indicates it's now skinned don't worry if it's just coloured half the skeleton like here it has only done this because of our joint selection if you want the full skeleton to be coloured you can instead bind the full join hierarchy and then manually remove the joints you don't need from the model skin cluster speaking of which you can now see the model has a skin cluster node attached this stores all the skinning information we can now also move the skeleton and the model followers let's change the view that's better so what we have are the default weights which is a starting point as you can see the arm doesn't deform in the right way just yet let's look at the fingers they are a good place to test how things are deforming you see this finger looks very soft and spongy yes we can fix this by adjusting the weights but we could also save ourselves some time by experimenting with the other skinning options let's reset the pose an alternative way to reset the pose of a skinned model is to select go to bind pose under the skin menu okay we want to remove the skinning information now so we can reapply it this time go to unbind skin this is a much simpler window with just a few options you can choose to delete the history which removes the skin cluster completely keep the history which will instead detach the skeleton but keep the skin cluster this is useful if you need to make some minor adjustments to the skeleton but don't want to lose the skin weights to then reattach it you need to use the bind skin option again but it will instead use the existing skin cluster rather than creating a new one finally you can bake the history this will make the model retain its current pose and position so effectively bake the deformation into the model let's apply that okay good the model is free again so select the bind joints again using the selection set and select the model now let's look at the other options using the default bind method which is closest distance you can see we have a drop-off rate slider which we can use to adjust each joint's influence on the model let's set that to the maximum value of 10 and see what the difference is and apply that so you can see here around the elbow the drop off is a lot harsher so we get a smaller distance where the joints influence ends and another begins let's undo that and reduce the drop-off rate instead now you see the drop-off is much larger so this joint is affecting a wider area it's affecting the whole arm now so that's not ideal for this sort of setup in this instance you want to try and keep each joint influence smaller so a drop-off rate of around five or higher would work okay so that's the first bi-method closest distance this tells mayer to use the closest joints to influence the vertices and ignore the hierarchy in some instances this can cause unwanted influences of the skeleton if not positioned correctly as we said in the beginning of this workshop the creature's arms were lower so with this option we would run the risk of the finger joints affecting the leg because with the arms lower the finger joints are then closer to the leg parts of the model this again is why we raise the arm slightly next we have closest hierarchy which is a better option in these circumstances this instead uses the skeleton structure so keeps influencers restricted to a joint's parent and children instead let's quickly try that you see it doesn't look much different and that's because we have the arms in a good position so closest distance works as well heat map is the one i use most often and is the best option if your model has a higher polygon count it essentially heats up each joint and uses the fall off to check for and influence the surrounding vertices so you get a tighter influence it will also ignore any joints that aren't inside the mesh so in some cases you may have to go in and add them manually if we select that option you will see that we now have a new slider heat map falloff like with closest distance and closest in hierarchy this controls how far the heat map will search for vertices to influence now this does take a little longer to calculate okay so if we look at the elbow again it's not that different to how we had it before where heat map really does shine though is with areas like the fingers you see we are getting a much better deformation here the finger is more solid so it means there's less cleanup work to do okay let's unbind this and see what effect the falloff slider has let's set it to zero select the joints again and the model and then apply as you can see the elbow has a greater influence over the model now but it's a nicer more gradual influence than when we use closest distance with a low drop-off rate let's check the finger again so this is softer as you would expect but it's still an improvement over the default option let's undo that and set the fall off to one this has tightened things up now so the finger looks much better probably better than earlier we would just need to adjust the crease here a little and the elbow is a lot harsher now so what we gained in the fingers we lost in the other joints the shoulder works quite well too still needs work though but under the arm looks nicer let's undo and compare this with closest distance again so you can see with a maximum drop-off rate this is too harsh in general heat map gives us a nicer result finally we have geocetic voxels i rarely use this option if i'm honest so i'm not going to go into too much detail on it here but it's great if you have a model that isn't built in the usual way so for example it may have non-manifold geometry where you have multiple polygons sharing an edge this can be caused when extruding or just bad modelling practice in general this will usually mean the heat map option won't work so you can try this instead as an alternative to be honest though if your model does have issues like this they should be addressed before exporting to a game engine as they will likely cause issues further down the line okay let's quickly look at the other options normalize weights will basically try and keep the weight values between 0 and 1. you can set this so it happens as you work on the weights which is the interactive option the problem is this can cause other areas you've worked on to change as mayor tries to keep everything even and in some cases it can make bad decisions so you end up with vertices affected by the wrong joints you can get around this though but i'll discuss that shortly none simply turns this off but then you run the risk of weight values being higher than 1. in this instance you would need to normalize the weights manually later but this can change how the influences are distributed so you may need to go back in and fix some stray weights finally post will normalize the weights for you once the model deforms again this may involve you going back and fixing some new waiting problem areas i would recommend where possible keeping this set to interactive so basically what you see is what you get and there are no surprises later on now you can control how the normalization is distributed with this option if you leave it set to distance you will likely get issues with vertices being assigned the wrong weights you may have seen this when you are smoothing wakes and areas of the model seem to pop out to combat this simply change this to neighbour so the weights when normalized are kept local it will save you so many headaches and make painting weights a more stress-free experience okay so those are the main skinning options so let's now bind our model and look at what other options are available to you to edit the skin weights so i want heat map and as mentioned i'm going to change weight distribution to neighbor i'll also set the fall off so it's around the default value again so 0.65 we will select the head model this time too so that also gets bound okay apply that let it calculate and that's done just do some quick tests to see how it deforms ignore the eyes for now they will be skinned but they only need to be influenced by the eye joints okay looks good so here we have our skin cluster node there are a few options we can change in here like how the weights are normalized we will leave that though the envelope is a good attribute to be aware of let's say i have a character posed but i need to see the model back in its default pose maybe i'm working on some blend shapes for example i can simply set envelope to zero this essentially turns off the skin cluster's influence okay so as good as heat map is there may be some joints that got ignored like this twist joint it doesn't seem to be attached to a skin cluster so we need to add those to the main skin cluster too so they influence the model and so we can adjust their weights let's check the other twist joints okay this isn't connected ah that one is this one is and so is this one probably because the model is thicker in these areas this one isn't all this or this one so let's add that to the selection with those selected we just add the model to the selection and go to skin edit influencers add influence and open the options i'll reset this so this will essentially add these joints to the current skin cluster if i apply this now and move one of the new joints you see it's influencing the model but it's overwritten the weight values that were there before so if you'd spent an hour working on the weights those would be lost not only that but it means you now have a lot more work to do to clean this up okay let's undo that what i prefer to do when adding influencers is to use the lock weights option and set the default weight to zero this will add the joints to the skin cluster but not affect any weighting values that currently exist you see the joint doesn't affect the model yet but it is now attached to the skin cluster node and we have also maintained the weights we had previously okay so now all the joints are connected let's look at how you can adjust the weighting values let's select some vertices around the arm and go to windows general editors and open the component editor if we look under the smooth skins tab we see a chart this lists all the vertices down the side and each one's influencers across the top so you can see exactly which joints are affecting which vertex and by how much what we can also do is change these values to update the weights manually if we set this column to 0.2 you see the weights change but all the weight values have also updated to take into account this change that's the weights being normalized so that's one way to adjust the weighting and it's perfect for when you get those stray weights that just don't want to be painted the main way to adjust the weighting is to interactively paint them which is much easier and a lot quicker to open the paint weights tool just go to the rigging shelf and click on this button here so here we have a list of all the joints that are affecting this model if you select one you'll see a grayscale area appear this is that joint's area of influence if we scroll down we will see those twist joints we added manually you will also see the padlock next to them is yellow indicating these are locked which is fine if you remember we locked the weights when we added these to stop them influencing the rest of the model's weights so we just need to go through and unlock these now just click on the icon to do this and let's find the rest while we are here at the moment the joints are sorted according to the hierarchy but you can change this up here so we can see them alphabetically hierarchy or just flat what we can also do is filter the list so let's say we just wanted to work on the twist joints we can input twist here and it will just show us the joints with twist in the name here we can choose what mode we want to work in paint select or paint select i rarely use anything but paint here next we have the main area where the paint tools are first is the paint operation area so you can dictate how you want the strokes to affect the weights replace will simply swap the current weight value with the one you have specified add will gradually build up an area so you can continually add a value to it scale will simply scale the values but again i never really use this finally smooth will gently blend the weights for you to soften and smooth an area out next you have your brush types which range from soft to hard normalize weights we discussed this before but there are very similar options here next we have the opacity and value sliders which work hand in hand with each other opacity is basically a percentage of the value slider so value is the main weight value an opacity will paint either all or part of that if value is set to 0.5 opacity will never be able to paint above that value this works well as it allows you to gradually adjust the weights it gives you more control let me show you a quick tip is you can also select which joint to work on in the main view just right click on the joint and go to select influence so with opacity and value both set to 1 we get solid white so these vertices are being influenced by the pelvis joint 100 percent if i reduce the opacity you see we can instead gradually add those weight values if i instead set opacity to 1 and then drop value no matter how much we paint we won't be able to go over the value amount we can still drop the opacity and gradually add the weights but they won't go over this value of 0.1456 so those are the main painting tools and we will see them in action in the next video oh yes one other option is flood this will simply fill the whole model with that value so now the model is influenced fully by the pelvis joint down here we can control how the influence is represented personally i prefer to work with just grayscale but you can enable colour feedback if that works best for you with this enabled red is the higher weight value here we have options to adjust the paint stroke you can also use a graphics tablet to control the opacity if you want a more interactive painting experience also you have various display options here so if we didn't want to see the joints through the model we could disable this i think that's the main options covered the ones i use anyway obviously there's so much more to this tool but for this project those options are fine before we end i also want to show you that you don't always have to paint the weights on the whole model let's select these vertices here now if i go back to the paint weights tool with opacity and value set to 1 if i paint now the area i am affecting is restricted to just those vertices you see i can paint up here but nothing happens i can also use flood and it will just update the selection this can be really useful for blocking weights quickly or when you are focusing on just one area okay i think we're at a good point now to end this video so now you know how to apply and edit skin weights in the next video let's jump in and start working on our character 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: 1,128
Rating: undefined out of 5
Keywords: rigging, maya, autodesk, maya3d, rigging in maya, utility nodes, rig, node editor, nodes, Build Controls, 2019, Spine, Head, Pelvis, Sternum, Shoulders, Chest, Torso, gamedev, game art, game development, game rig, Paint, Paint Skin Weights, Mirror Weights, Skinning, Smooth, Replace, Add, component editor, selection sets, bind skin, colorize skeleton, bind pose, detach skin, dropoff rate, heat map, geosedic voxels, maya 2022, 2022
Id: FSvEb91T7aM
Channel Id: undefined
Length: 28min 44sec (1724 seconds)
Published: Sun Nov 28 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.