 Vertex groups are groups of vertices within a mesh object that can be referenced for various purposes in Blender. It is also the foundation of how a mesh and an armature will interact with each other. Put simply, when done properly, each important bone in an armature object will have a group of vertices assigned to it. I'm going to demonstrate with this rig, which you can download in the description down below. As you can see, I can select a bone and it seems to bring a group of vertices along with it. This allows for bones of armatures to control specific parts of a complex mesh. You may have heard of vertex groups in other software. Vertex groups are also known as weights. The term weights also reflects the fact that our vertex groups can assign a certain influence the bone has over individual vertices. For example, you can have these vertices copy 100% of the bone's movement, but have these vertices further out be assigned to the same bone but only copy say 50% of that bone's movement. Additionally, you can also assign individual vertices to multiple bones or vertex groups. In other words, it can be influenced by two bones or more at a time. This helps blend weights between bones so deformation of certain joints feel organic and natural. But how do we actually change these vertex groups? How do we edit, create or manipulate them? To see any mesh objects vertex groups, simply select it and go into the mesh data tab of the properties editor. This is labeled with the green triangle icon and is where vertex groups reside for all mesh objects. Right now, there are none, but we'll come back to this page later. Let's begin by creating a simple rig for our cube. I'm going to go ahead and subdivide this cube a few times in edit mode to give us some extra vertices and scale it along the z-axis. Then I'm going to add a simple armature object and scale the bone to the length of the cube, subdivide the bone twice and go back into object mode. Now in order to deform the cube with the armature, we simply need to parent the cube object to the armature object. To do this, simply select the cube then shift select the armature. Then press control P. From here, you can select with automatic weights. This is what we've been choosing for all of our previous videos, but let's stop to think about what that means. Quite simply, clicking this option will create vertex groups for us and assign the vertices within each group automatically with proximity based weight to each bone. As you can see, as we deform the armature in pose mode, the cube deforms along with the bones in a very smooth and organic way. I'm going to leave it bent like this for now and then select our cube mesh. If we go into the mesh data tab again, we can now see the newly generated vertex groups, each named after the bone they are assigned to. As you can see, our bone names aren't very descriptive, so I'm going to select our armature and rename the bones properly. Let's call the top one, top, the middle one, mid, and the bottom one, bot. Now if we go back to our cube and look at our vertex groups list, we can see that the names of the vertex groups have changed as well. But what do these vertex groups look like? In order to visually see our weights, we can enter weight paint mode. This is another mode option in the top left hand corner when you have a mesh object selected. For hotkey users, you can press control tab to open a pie menu where weight paint is an option. Now as you can see, we have a blue cube with green and red markings on it. This is how weights are displayed in Blender. Each color represents an amount of influence or weight the vertex group has over specific vertices. For example, if the vertices are marked with blue, they have a weight of 0%, as in they are not influenced by the vertex group at all. Whereas if the vertices are marked with red, they have a weight of 100%, or 1.0, which is the maximum amount of influence a vertex group can have. Meanwhile, green represents 50% weight and every color in between is a blend of weights between these three colors. As you select different vertex groups in the list in your mesh data tab, you'll see that you can choose which vertex group to display and to edit. However, these vertex groups are associated with specific bones, so some of you might find it a bit roundabout to not be able to select the bone to see its weight. As you can see, attempting to select the bone now with left click doesn't seem to do what we want. So if we want to select the bones to display their weights in weight paint mode, let's go back into object mode and select the armature first. Then shift select the mesh and then go into weight paint mode. Your armature will now be put into pose mode automatically. For left click users, to select bones make sure you press control left click. Right click users can just right click to select as usual. To better understand the difference between right click select and left click select, make sure to watch our right click select video. Anyway, as you may have already guessed, weight paint mode is one way we can edit our vertex groups. You may have already noticed that your cursor has turned into a circle in the viewport. This is your weight paint brush. In weight paint mode, you can actually paint weights onto your vertices, adding said weights to the vertex group you have selected. We can also open the left hand side quick tools menu to see our other weight paint tools. These include blur, average, smear, gradient and eyedropper. If you're familiar with any painting software, you should recognize these functions. We'll go over each one, but let's start with painting. Let's say I decided that I want this top bone to have more influence over the bottom of the cube as well. Let's simply left click and drag to paint over the bottom half of this cube, making it more red. By default, as you can see, the weight we paint is set to 100%. Cool, so what if later I change my mind and I actually don't want weights for this vertex group on the bottom of the cube? Well, to remove weights, you can also paint a weight of 0% onto the mesh. To do this, simply open the right hand side menu by clicking this arrow or pressing the N key and go to tools. This is where your brush settings reside, and you can change things such as the radius of your brush as well as the weight and strength of your brush. Just to clarify, weight can be seen as the color of what you want your brush to paint. In other words, the amount of influence you want your vertex group to have over the vertices you paint. Whereas strength represents opacity of the brush. In other words, setting the strength to anything lower than 1.0 will allow your brush to slowly mix with the existing weights of the mesh as you click, until it reaches the goal color you set in the weight slider. On the other hand, setting the strength to 1.0 will completely replace any color beneath your brush with the color or weight you set in the weight slider. The radius of your brush refers to your brush size. Hockey users can actually press F while in the viewport to change your brush size whenever you want. Simply right click to cancel and left click to confirm. Now that we know all of this, this should start making a little more sense. What we want to do is paint out the bottom influence we painted in earlier. So how should we do this? Well, we want to completely erase the current heavy red weights with empty blue weights. So let's set our weight to zero, which essentially sets our color to dark blue. And to replace the heavy red color completely as we paint, we're going to want to make sure our strength is at 1.0. Now, as we paint over the red, you can see that our blue paint brush is erasing the weights. But here's something important. If we rotate our perspective around the object, you may notice that we are having some issues painting behind the mesh. This is because it's behind the geometry in the front. We can't, of course, simply rotate our mesh while painting. But that can be tedious and doesn't always solve the issues where there's complex detail in the geometry or geometry within geometry. So how do we paint through a mesh so that we influence the vertices behind geometry as well? For that, we need to go over two of our options we have for our brush. If we look at our tools tab on the right hand side, we can see under our brush settings that we also have an option section. Let's expand this, and immediately you'll see a few checkboxes. Feel free to read more about what each of these settings do in the documentation or hover over them for a tooltip. But we will be going over these two, front faces only and 2D falloff. Front faces only simply means that your brush will only paint onto the vertices and faces that it can directly see. This means that any geometry hidden behind other geometry will not be painted. Turning this option off by itself is great for painting crevices or folds, where the geometry you would want to paint happens to be sandwiched or hidden behind nearby geometry. It's also useful for painting through an object onto the back side of the geometry, kind of like what we want to do. However, when we uncheck this, it still doesn't seem to paint all the way through. Hmm, well, that's because of this second option, 2D falloff. By default, 2D falloff is turned off, meaning that our default brush actually uses a 3D falloff. This means that our brush shape is more like a sphere being dragged along the surface of the mesh as we paint. Therefore, the falloff will only influence vertices that are nearby the contact point your sphere initially makes with the mesh. Having a 3D falloff makes a lot of sense when you're trying to paint a mesh. For one, it feels like a real brush, affecting only the vertices closest to where your brush meets the mesh. Meanwhile, 2D falloff is more like a cylinder that pierces through your mesh. This mode will paint anything that your cursor happens to touch. With front faces only turned on, the 2D falloff brush acts more like a spray can. And with front faces only turned off, we get to actually paint all the way through our mesh. Now that we understand these two settings, let's turn off front faces only and turn on 2D falloff, to make sure we're thoroughly removing weights. Another way to completely remove weights from a vertex group is to simply go into edit mode. Select the vertices you want to remove weights from and go to the vertex group tab. Make sure the correct vertex group is selected in the list and click Remove. This should remove the vertices from the vertex group entirely. In the same way, you can also assign weights to a vertex group in edit mode as well. Let's apply a weight of 100% to the top third of this cube again. Simply select the vertices you want to assign weights to, change the value of the weight slider under the vertex group list to 1.0, and click Assign. We can then go back into weight paint mode to see these new weights visualized. For those of you who are curious, while in edit mode, if you select a vertex group from the list and press select, it will select the vertices in that vertex group. And deselect will deselect the vertices. Alright, now let's go back into weight paint mode and take a look at the other weight paint tools we have in our quick tools menu. Smirr is a very helpful tool to use when looking to paint a natural falloff. Average does something similar, but specifically averages everything under its influence, smoothing sharp contrast areas. Smirr allows you to carry weights over from one place to another, with a falloff. And gradient lets you paint a gradient starting with your selected weight and blending into the existing weights. Simply select left click drag to use. Keep in mind for the gradient tool, your weight and strength settings will be separate and above your brush tool, as the gradient tool does not use your brush, but rather a vector. And of course, the eyedropper tool allows you to quickly select weights by sampling the existing weights on your mesh. Now weight painting for rigs is great, but it's important to know that vertex groups are not exclusively used for rigging. In fact, you can use them to affect modifiers, particles, physics and more. Let's take a look at that real quick. First thing we'll do is add a monkey mesh for easy visualization. If we go into the modifiers tab, we can add a modifier and see if it has a vertex group input field. Not all of them do, but certain modifiers such as wireframe include this input field for further customization. Let's add a wireframe modifier and see how it looks on our monkey. As you can see, it turns our entire mesh into a wireframe version of it. This is cool, but I still want to see my monkey mesh too, so I'm going to uncheck this option here called replace original. Great, but now what if we only want a specific part of the mesh to be wireframe? Well for that, we can create a vertex group. To do that, let's go back into our mesh data tab in the properties editor, and click the plus icon under vertex groups. We can rename the vertex group by double clicking it in the list. Let's call this one wireframe group. From here, we can actually go into edit mode and select all the vertices in the ear with the box select tool. Then go to the vertex group options, make sure wireframe group is still selected in the list, and drag the weight slider to 1.0. Then click assign. Now we can go into object mode and see if anything has changed. No, not yet. Ah, that's because we still need to go into our wireframe modifier and left click the vertex group input field. Then select wireframe group from the drop down. Nice, now we can see that the vertex group is influencing the effect of the modifier. Only the ear has been turned into a wireframe while everything else has been ignored. You can also flip the influence values of the vertex group by simply clicking on the two headed arrow icon to the right of the vertex group. And now everything has wireframe except the ear. Meanwhile, increasing the factor slider below will simply blend between the vertex groups influence and what we had by default. This exact method of using vertex groups as influence can be seen in particles and cloth as well. Feel free to experiment to better understand how you can use vertex groups for your own projects. I hope this gives you a fundamental understanding of how to create, use, and edit vertex groups in Blender.