Rigging - Hair
Prepare for Rigging
The HEADWEAR_Guide file is required for hair rigging work. It contains a mask, armature, and guide geometry.
This guide assumes you have completed modeling of the hair elements and have added any additional bones for rigging.
Bind the Hair mesh to the armature. Select the Hair mesh and then the armature. Go to the Object menu > Parent > Armature Deform - With Empty Groups. Armature Deform - With Automatic Groups is also an acceptable option.
For a baseline weight distribution, transfer weights from the dummyFace mesh to the hair objects. Select the dummyFace mesh, then the hair object. Switch to weight paint mode. In the Weights menu, find and click the Transfer Weights operation. In the expanded options menu at the bottom left of the viewport, change the Source Layers Selection to “By Name.”
ZEPETO has a maximum skin weight limit of 4 bones per vertex
Please ensure that the weight per vertex limit does not go over 5. 4 bones per vertex is the default in Blender, but it’s good practice to check. You can limit the bone weights per vertex in weight paint mode using the Weights > Limit Total function.
Test and correct the weight values on the mesh by moving individual joints and fixing weight errors that may crop up with the weight painting tools.
Make sure to enable “Auto-Normalize” in the weight paint tools option for weight painting. Otherwise, the weights may not be distributed evenly across the mesh.
Below are common scale values to test common head size changes
headUpper.scaleX = 0.85 - 1.15
headUpper.scaleY = 0.7 - 1.1
jBone.scaleX = 0.8 - 1.2
hairAll.scaleX = 0.88 - 1.15
foreHead.scaleZ = 0.8 - 1.175
The swing bone feature is important in hair rigging. Normally, the hair bone is added to the hairAll bone. If there are pieces of hair that move on the forehead such as bangs, then it is recommended to connect them to another bone.
The hair bones should be arranged in the armature hierarchy according to where the corresponding hair piece exists on the head, so the hair scales properly with other sections of the head.
If the hair mesh is too complex to easily assign weights to each strand of hair, painting weights on a simplified model and transferring weights back to the complex model can help.
Please take some precautions when setting swing bones for hair.
It’s important to check on the swing bone’s behavior on the hair item. Check that when the swing bone hair moves, the inside of the hair geometry or the interior of the mask does not show. Particularly when making fringes and bangs, make sure the hair does not go through the face when it moves.
It is not recommended to have swing bones on bangs.
For long hair, make sure that weights haven’t been mistakenly added to other parts of the hair mesh as it can be possible to unintentionally paint bone weights on mesh elements in the background.
To test swing bones, it will be necessary to export the item to Unity, as the system is only run in Unity. When exporting for testing, make sure to export the hair mesh, armature, and mask. The mask needs to be unbound from the armature.
Updated 4 months ago