Sunteți pe pagina 1din 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

In a typical fixed or static mesh you will select the root bone of you skeleton in step 6. If you are making an animated item and the entire mesh is to be animated you will select the bone that has keyframes. 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, then select the bone, and adjust the absolute value then repeat.

Process for intermediate weighting (Skin)


When your mesh needs to align with another point on the avatar thats not a simple, single bone, you can usually find a close vertex and use those same weight values for your mesh. Doing this keeps your mesh fixed to the avatar and can be useful for things like badges or shoulder pads or even hip holsters. Start by finding a vertex on the avatar that approximates where you want your mesh. Write down the bones and the weight values for each bone and then use those same bones/weights on your mesh. You may have to do this for multiple vertices if your mesh includes multiple parts that will all stay fixed to the avatar. While the normalizing math may seem tedious at first, keep in mind you may not have to do this if your mesh aligns with a vertex that is weighted to one bone. Worst case you only have to do this a couple of times, once for each mesh piece. Part 1 Get the weight values from a vertex on the avatar (or other mesh) 1. Select the avatar body part that contains the area you need (torso, pelvis, etc) 2. Expand the Physique modifier and choose Vertex sub object mode 3. Select the vertex that is closest to where your mesh will go 4. Using the Type-In Weights button, write down the bones and weights Part 2 Calculate the Normalized value for each weight 1. For one vertex, add up all the weight values. Include the weights for duplicate bones (happens a lot on Spine03 and Spine04) 2. Divide each bone weight by the total to get the normalized value For example, assume the vertex has these weights: Spine03 = 0.300 Spine04 = 1.000 The total is 1.300. So each weight, in normalized form: Spine03 = 0.300 / 1.300 = 0.231 Spine04 = 1.000 / 1.300 = 0.769 Part 3 - Apply the weights to your mesh 1. Select your mesh and add the Skin modifier 2. Add the bones you wrote down in part 1 3. Expand the modifier and select Envelope or click the Edit Envelopes button

4. 5. 6. 7.

Check ON Vertices Select all vertices on your mesh Select each bone from Skins list of bones Make sure to check on Normalize this will force 3ds Max to ensure all bone weights add up to 1.0 8. For each bone, type in the weight value in the Abs. Effect box that you wrote down from the matching vertex

Process for complex weighting (Skin)


5. 6. 7. 8. 9. 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 youve setup your initial envelopes and cross sections you need to test your meshs movements. 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. If all looks perfect, youre done! If the mesh has chunks that arent 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 arent 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. Make sure Envelopes mode is on and Vertices is checked ON 2. Select all vertices 3. Click Bake Selected Verts Now you may select individual vertices, individual bones, and adjust the weight values manually by typing in the Abs. Effect value. On newer versions (Max 8 and higher) you can use the Weight Tool window to more easily edit values.

S-ar putea să vă placă și