Bones System

A Bones system is a jointed, hierarchical linkage of bone objects that can be used to animate other objects or hierarchies.

Bones are especially useful for animating character models that have a continuous skin mesh. You can animate bones with forward or inverse kinematics. For inverse kinematics, bones can use any of the available IK solvers, or through Interactive or applied IK.

Dinosaur character modeled using bones

Bones are renderable objects. They have several parameters, such as taper and fins, that can be used to define the shape the bone represents. The fins make it easier to see how the bone is rotating.

For animation, it is very important that you understand the structure of a bone object. The bone's geometry is distinct from its link. Each link has a pivot point at its base. The bone can rotate about this pivot point. When you move a child bone, you are really rotating its parent bone.

It might be useful to think of bones as joints, because it is their pivot placements that matter, more than the actual bone geometry. Think of the geometry as a visual aid that is drawn lengthwise from the pivot point to the bone's child object. The child object is usually another bone.

Bones system seen alone and inside a wireframe model

Any hierarchy can display itself as a bone structure (see Using Objects as Bones), by simply turning on Bone On in the Bone Editing Tools rollout.

Creating Bones

You start creating bones by clicking the Create Bones button on the Bone Editing Tools rollout, or by clicking the Bones button in the Systems category on the Create panel.

To create bones, do the following.

  1. Your first click in a viewport defines the start joint of the first bone.
  2. The second click in a viewport defines the start joint of the next bone. Visually only one bone is drawn at this point because bones are visual aids drawn between two pivot points. It is the actual pivot point’s placement that is important.
  3. Each subsequent click defines a new bone as a child of the previous bone. The result of multiple clicks is a single chain of bones.
  4. Right-click to exit bone creation.

    This creates a small “nub” bone at the end of the hierarchy, which is used when assigning an IK chain. If you are not going to assign an IK chain to the hierarchy, you can delete the small nub bone.

Creating a simple chain of three bones

3ds Max lets you create a branching hierarchy of bones. To create a branching hierarchy, such as legs branching from a pelvis, do the following:

  1. Create a chain of bones, and then right-click to exit bone creation.
  2. Click Bones (or Create Bones) again, and then click the bone where you want to begin branching. The new chain of bones branches from the bone you click.
    Warning: The behavior of a branching bone hierarchy is not always intuitive.
Note: You can also use Select And Link to connect one bone hierarchy to its branches. However, except for this one special case, using Select And Link with bones is not recommended . To edit an existing bone structure, whether branching or not, use the Bone Tools instead.

Assigning IK Controllers to Bones

By default, bones are not assigned inverse kinematics (IK). Assigning an IK solver can be done in one of two ways. Typically, you create a bone hierarchy, then manually assign an IK solver. This allows for very precise control over where IK chains are defined.

The other way to assign an IK solver is more automatic. When you create bones, choose IK solver from the list in the IK Chain Assignment rollout, and then turn on Assign To Children. When you exit bone creation, the chosen IK solver is automatically applied to the hierarchy. The solver extends from the first bone in the hierarchy to the last.

For more information about IK, see Introduction to Inverse Kinematics.

Setting the Initial Position of Bones

When you first create a bones system, the position of the bones is the initial state. Before you assign an IK solver or method, you can change the initial state of the bones by moving, rotating, or stretching the bones individually.

Bone Color

By default, bones are assigned the color specified for Bones in the Colors panel of the Customize User Interface dialog. Choose Object as the Element and then choose Bones in the list. You can change the color of individual bones by selecting the bone, clicking the active color swatch next to the bone’s name in the Create panel or Modify panel, and then selecting a color in the Object Color dialog.

You can also use the Bone Tools to assign bone colors, or to assign a color gradient to a bone hierarchy.

Bone Fins

Fins are visual aids that help you clearly see a bone’s orientation. Fins can also be used to approximate a character's shape. Bones have three sets of fins: side, front, and back. By default, fins are turned off.

Bones can have fins.

Bones with various fin configurations

Renderable Bones

Bones can be renderable, though by default, they are not. To make a bone renderable, turn on the Renderable checkbox in the bone’s Object Properties dialog.

Bones can be renderable.

Object Properties for Bones

In addition to visual properties, bones have behavioral properties. The controls for these are located on the Bone Tools.

You can use these controls to turn other kinds of objects into bones.

Using Constraints with Bones

You can apply constraints to bones as long as an IK solver or method is not controlling the bones. If the bones have an assigned IK controller, you can constrain only the root of the hierarchy or chain. However, applying position controllers or constraints to a linked bone can cause undesirable effects, such as breaking of the bone chain.

The “nub” bone at the end of the chain has a Spring controller applied to it. The Spring controller is connected to an animated sphere.

Right: The sphere's movement breaks the bone chain.

To avoid this problem, don't apply position controllers directly to child bones. Instead, create an IK chain and apply the controller to the IK chain's end effector.

An IK chain has been applied, connecting the end nub to its parent bone. The IK chain's end effector is connected to the ball by a Spring controller.

Right: Now when the sphere moves, the IK chain prevents the bones from breaking.

Constraints and controllers that affect orientation only, such as Orientation or Look At, do not present this problem when applied to child bones.

Procedures

To create a bones system:

  1. On the Create panel, click (Systems). On the Object Type rollout, turn on Bones.

    You can also access Create Bones through the Bone Tools rollout.

  2. Click in a viewport.

    This creates a joint that is the base of the bone's hierarchy.

  3. Drag to define the length of the second bone.
  4. Click to set the length of the second bone, and then drag to create the third bone. Drag and click to continue creating new bones.
  5. Right-click to end creation.

    3ds Max creates a small “nub” bone at the end of the hierarchy. This bone is used when assigning an IK chain.

    The first bone you create is at the top of the hierarchy. The last bone you create is at the bottom. For more about linked objects, see the Hierarchy Panel.

To create a bones hierarchy with an IK solver automatically applied:

  1. On the Create panel, click (Systems). On the Object Type rollout, turn on Bones.
  2. In the IK Chain Assignment rollout, select an IK solver from the list.
  3. Turn on Assign To Children.
  4. In a viewport, click and drag to create the bones. Right-click to end bone creation.

    After the bones are created, the chosen IK solver is applied to them.

To edit the appearance of a bone:

  1. Select a bone.
  2. Go to the Modify panel.
  3. Change settings in the Bone Parameters rollout.

To change the length of bones after they’ve been created:

    Attention: Repositioning a bone affects its length visually. More important, it affects the bone’s pivot position. The length of the bone is only a visual aid drawn between each bone’s pivot point. A bone has only one pivot. The bone you see visually is connecting its pivot point to the next bone’s pivot point.
  1. Choose Animation menu Bone Tools.
  2. On the Bone Tools dialog, click Bone Edit Mode.
  3. Move the child of the bone you want to change. The length of its immediate parent changes to reach the child bone.
  4. Turn off Bone Edit Mode when you are finished editing the bones.

To add fins to bones:

  1. Select the bone.
  2. Choose Animation menu Bone Tools.
  3. Select the bones to which you want to add fins.
  4. In the Fin Adjustment Tools rollout, turn on Side Fins, Front Fin or Back Fin.
  5. Adjust the size and appearance of the fins with the appropriate spinners.
    Note: You can also add fins to an individual bone on the Modify panel.

Interface

IK Chain Assignment rollout (creation time only)

Provides the tools to quickly create a bone chain with an IK solver automatically applied. Also allows for bone creation with no IK solver.

IK Solver drop-down list

Specifies the type of IK solver to be automatically applied if Assign To Children is turned on.

Assign To Children

When on, assigns the IK solver named in the IK solver list to all the newly created bones except the first (root) bone. When off, assigns a standard PRS Transform controller to the bones. Default=off.

Note: Choosing the SplineIKSolver and turning on Assign To Children causes the Spline IK Solver dialog to appear after bones have been created.
Assign To Root

When on, assigns an IK solver to all the newly created bones including the first (root) bone.

Turning on Assign To Children also automatically turns on Assign To Root.

Bone Parameters rollout (creation and modification time)

These controls change the appearance of the bones.

Bone Object group
Width

Sets the width of the bone to be made.

Height

Sets the height of the bone to be made.

Taper

Adjusts the taper of the bone shape. A Taper of 0 produces a box-shaped bone.

Bone Fins group
Side Fins

Lets you add a set of fins to the sides of the bones you create.

  • Size Controls the size of the fin.
  • Start Taper Controls the start taper of the fin.
  • End Taper Controls the end taper of the fin.
Front Fin

Lets you add a fin to the front of the bone you create.

  • Size Controls the size of the fin.
  • Start Taper Controls the start taper of the fin.
  • End Taper Controls the end taper of the fin.
Back Fin

Lets you add a fin to the back of the bone you create.

  • Size Controls the size of the fin.
  • Start Taper Controls the start taper of the fin.
  • End Taper Controls the end taper of the fin.
Generate Mapping Coords

Creates mapping coordinates on the bones. Since the bones are renderable, they can also have materials applied, which can use these mapping coordinates.