Blender 3D: Noob to Pro/Bones
From Wikibooks, the open-content textbooks collection
Bones are used for shifting models and making them posable. If you are not ready for this yet and wish to continue simply modeling, please skip this tutorial to the next section.
Bones are a modeling tool that are especially important for animating characters. Bones allow you to move characters' limbs in a way that is much simpler than trying to re-arrange the vertices every time.
Basically how it works is that a bone will be associated with certain vertices, which will move along with the bone when the position is changed in pose mode. Using bones is fairly simple once you get the hang of it, but, like many things in Blender, can be a little daunting at first sight. Never fear - that's what tutorials are for!
[edit] A model
Bones don't do much on their own - in fact, they turn invisible at render time! So, we'll need a model to use them with. If you haven't already, use an earlier tutorial to create a simple model, and we'll be on our way!
For this tutorial, we're going to use a model with human proportions, but bones can be used with just about any body type. The same idea can be applied to cats, spiders or whatever!
[edit] Laying down bones
Note: This just shows the basics of adding bones to an object. Go to the advanced animation page for a more comprehensive guide on this.
First of all, we'll need a model to put some bones on! For this tutorial, we're going to use a humanoid model. I'm using a quick model that I made based off of the Blender 3D: Noob to Pro/Modeling a Simple Person first tutorial. It's rather blocky, but this isn't a detailed tutorial. ;)
Okay, first of all, here's our setup, with Block Dude standing on the plane.
Now, let's put some bones on Block Dude! In Object Mode go to Space Bar -> Add -> Armature.
What we are looking at is an armature. This is a single bone. Now, we need to put the bone in Block Dude! Move and rotate the bone so that it's in the middle of Block Dude's chest. If your bone does not have the correct length, then change the size of the bone by moving one of the ends of the bone : switch to Edit Mode, select one of the ends of the bone, then move it using GKEY (You might be tempted to scale a bone, but this will mess things up). You might need to toggle wireframe mode if you have solid mode enabled - simply press ZKEY to toggle between them.
To create a second bone starting from one of the ends of the first bone, make sure you are in Edit Mode, select the end of the first bone, then press EKEY. The second bone appears, with its start point on the selected end of the first bone. Move the mouse to position the end point, then press LMB, ENTER, or SPACE. Now, extrude (EKEY) and scale the bone as needed to put the bones in his body! Make sure that you are in Edit mode, and click the pink dots at the end of the bone to do things like extrusion. These operate much the same way as vertices, you can extrude, rotate, move, and even subdivide. Your finished result should look something like this:
Now, just to make things easier, we're going to name the bones. For example, my bones are named RT_Forearm, Left_Forearm, RT_Upper_Arm, etc. Select the bone and press F9 to display the Editing panel. In the "Armature Bones" sub-panel click the top left box to edit the name, indicated with a red arrow in the screenshot below. (noob note: when you are naming the bones remember that if you are looking at the person from the front, your left is the person's right. To make the naming easier switch to viewing the person from behind using CTRL+NUM1.)
Now, we need to parent the bones to the mesh. Go back into Object Mode and select Box Dude. Now, select the Armature as well, and press CTRL+PKEY (noob note: the selection order is important in defining which object is the parent, so you cannot select both objects at the same time). A menu will pop up, select Armature, then Create From Bone Heat (Create From Closest Bones before blender 2.46). Select the armature, and enter Pose Mode (CTRL+TAB) (you need to select the armature for this option to appear!). Try moving a bone around. If you've done everything correctly, your mesh should move when you move the bones! If this doesn't happen, scale the bones up so that they fit better in the mesh, and scale up the bones until they do what you want (read comment below on adjusting the bones envelopes if you do not get an effect while moving/rotating the bones). With the bones now, you can put Box Dude into a lot of different positions without moving individual vertices.
Note: Create From Bone Heat creates vertex groups within the parented object that are associated with armature bones. This is done automatically, according to the bones' position and size. Alternatively, choose Name Groups instead of Create From Bone Heat if you don't want Blender to assign groups automatically, and do it manually. To manually change vertex groups go to Edit Mode (Edit Mode, F9, Links and Materials tab) and use the Assign and Remove buttons. 'Assign' adds vertices to the group (without removing any members that are not currently selected) and 'Remove' obviously removes them. Vertices can be assigned to multiple groups.
In response to the previous comment, if the vertices are properly assigned to the bones they will move regardless of whether the bones are inside the cylinder or not (HOW they deform WILL be affected however). I'm guessing that your mistake was creating and (more importantly) parenting the cylinder to the armature while it was outside the cylinder, which caused Blender not to assign vertices to any bones at all. You can check this by editing the cylinder, selecting a vertex group in the Links and Materials tab, and pressing select. This will highlight the vertices associated with the bone. If none are selected, it means none were assigned in the first place - in which case you need to assign them manually as explained above.
If there is no effect, select in Edit or Pose mode that bone (or bones) and choose Envelope display mode (F9 -> Armature -> Envelope), then press Alt+S and increase its area of influence to cover all faces that should be influenced by the bone.
Finally, here's an example of how you can move Box Dude with the bones: 