You are on page 1of 3

Weighting in 3ds Max (with Skin

What is weighting?
Weighting is adding a modifier to a mesh that defines influences that “bones” will have over vertices. The influence means that as bones move, they move the vertices move, too. How much or little the vertices move with a bone is determined by the weight value. NOTE: A “bone” can be any object but is most commonly a hierarchy of linked Bone objects for an avatar and a hierarchy of linked Dummy objects for everything else.

Two modifiers for weighting
  Skin Physique

Either modifier can be used to make any type of item in IMVU. You can make clothing using Skin or Physique just as you can make an animated furniture item with Skin or Physique. Physique is an older modifier that came as an add-on to 3ds Max prior to version 7. All supported versions of Max for IMVU include Physique and Skin and so the choice is yours.

Scenarios for Weighting
Every vertex of every mesh in IMVU must be weighted to at least one bone. Typical scenarios for weighting items, in order of complexity:    Entire mesh weighted to one bone (i.e. furniture, simple rooms, simple accessories) Most of mesh weighted to single bone, with some portion weighted to a separate bone (i.e. furniture, rooms, accessories with simple animation) Mesh is weighted to various bones, including multiple weights per vertex (i.e. clothing, complex accessories, longer hair, etc.)

Process for simple weighting (Skin)
1. 2. 3. 4. 5. 6. 7. Select the mesh and add the Skin modifier Add the bone(s) Expand the modifier and select “Envelope” or click the “Edit Envelopes” button Check ON “Vertices” Select all vertices in the viewport (Ctrl+A, or drag a selection rectangle around everything) Select the bone of influence In “Abs. Effect” type in 1.0

assume the vertex has these weights:  Spine03 = 0. Add the bones you wrote down in part 1 3. add up all the weight values. Process for intermediate weighting (Skin) When your mesh needs to align with another point on the avatar that’s not a simple. If you have a mix – a part of the mesh that is fixed and part is animated – you will repeat steps 5 – 7 for each part but in step 5 you will only select the vertices for one portion of the mesh. pelvis.In a typical “fixed” or static mesh you will select the root bone of you skeleton in step 6. Worst case you only have to do this a couple of times. once for each mesh piece. in normalized form:  Spine03 = 0. write down the bones and weights Part 2 – Calculate the “Normalized” value for each weight 1. Part 1 – Get the weight values from a vertex on the avatar (or other mesh) 1. You may have to do this for multiple vertices if your mesh includes multiple parts that will all stay “fixed” to the avatar.000 / 1.300 = 0. Expand the modifier and select “Envelope” or click the “Edit Envelopes” button . Expand the Physique modifier and choose “Vertex” sub object mode 3.300 = 0. Start by finding a vertex on the avatar that approximates where you want your mesh. Divide each bone weight by the total to get the normalized value For example. Select the avatar body part that contains the area you need (torso. and adjust the absolute value then repeat. etc) 2.Apply the weights to your mesh 1. While the “normalizing” math may seem tedious at first.769 Part 3 . Select the vertex that is closest to where your mesh will go 4. Write down the bones and the weight values for each bone and then use those same bones/weights on your mesh.300. Doing this keeps your mesh “fixed” to the avatar and can be useful for things like badges or shoulder pads or even hip holsters. Select your mesh and add the Skin modifier 2. single bone.300 / 1.231  Spine04 = 1. then select the bone. you can usually find a close vertex and use those same weight values for your mesh. So each weight. Include the weights for “duplicate” bones (happens a lot on Spine03 and Spine04) 2. If you are making an animated item and the entire mesh is to be animated you will select the bone that has keyframes.300  Spine04 = 1.000 The total is 1. keep in mind you may not have to do this if your mesh aligns with a vertex that is weighted to one bone. For one vertex. Using the “Type-In Weights” button.

6. 7. . Effect” value. 9. Make sure “Envelopes” mode is on and “Vertices” is checked ON 2. This is done by creating the keyframes on the bones then moving (scrubbing) the time slider back and forth and watching how your mesh reacts. Click “Bake Selected Verts” Now you may select individual vertices. 8. 6. 7. Check ON “Vertices” Select all vertices on your mesh Select each bone from Skin’s list of bones Make sure to check on “Normalize” – this will force 3ds Max to ensure all bone weights add up to 1. Select the mesh and add the Skin modifier Add the bones Expand the modifier and select “Envelope” or click the “Edit Envelopes” button Check ON “Cross Sections” and “Envelopes” Select a bone from the list and resize the cross section capsules and the envelopes After you’ve setup your initial envelopes and cross sections you need to test your mesh’s movements. 5.4. individual bones. On newer versions (Max 8 and higher) you can use the “Weight Tool” window to more easily edit values. you’re done! If the mesh has chunks that aren’t moving at all or if there are large sections not blending well   Select the appropriate bone and increase the size of the cross section to make sure it encompasses the vertices that aren’t moving OR Increase the amount of overlap between two cross sections to get a better “blend” of weights Once the mesh is mostly moving the way you want and there are only some minor issues then you can bake the verts and begin editing weight values by hand: 1. and adjust the weight values manually by typing in the “Abs.0 8. Select all vertices 3. type in the weight value in the “Abs. Effect” box that you wrote down from the matching vertex Process for complex weighting (Skin) 5. For each bone. If all looks perfect.