×
Меню
Индекс

Skinning & Morphing (EN)


 Выдержка из оригинальной справки. (NDL Gamebryo 1.1)
 
Skinning & Morphing with 3ds Max
Skinning for Artists
 
There are a few important bits of hardware knowledge that a character animator and modeler should be aware of before jumping into skinning a character. The hardware skinning pipeline is broken into two important numbers, the maximum number of bones the hardware can handle and the maximum number of bones that can influence a vertex. Each number has an important role to play in determining how your skinned character will perform in a game.
The maximum number of bones the hardware can handle by default for most platforms is four. What exactly does this mean? Four is a really small number for a character. Behind the scenes, Gamebryo will break the skinned mesh apart into pieces that obey this limit. These pieces are referred to as skin partitions. For each partition we generate, we have to render the partition's geometry in a separate rendering call. For instance, a skinned character with 28 bones could be broken into 23 partitions in order to obey the maximum bone limit. This means that we are rendering the model in 23 separate pieces. Furthermore, each partition can only be composed of the vertices that use only those bones. If you're not careful in your weight assignments, you could end up with a partition with only one triangle!
The maximum number of bones influencing a vertex by default on most platforms is also four. This means that a vertex that is influenced by five or more bones will only use the four most influential bones in its skinning. This may result in cracks in sections where many bones come together like the back of the neck and the crotch. Careful modeling and weight assignment will help to minimize this problem. This does not mean that you should always use four bones per vertex. In fact, it is best to use as few weights as are visually acceptable per vertex. This will help substantially when partitioning the mesh because more vertices will be able to fit into a partition.
What should you take away from this discussion? First off, how you skin your character will directly transfer into performance for that character.
 
примечание.
На деле, на вертекс может приходиться более 4х костей, но если значения будут слишком низкими - будут щели.
 
The Gamebryo Max Plug-in supports the two major modifiers for skinning. We have found the recent Max 4 & 5 versions of Skin to be more reliable and robust then Physique, even when applied to bipeds, however both are supported.
Gamebryo doesn't support floating bones for physique. If your model requires this capability, we suggest modeling with Skin instead of physique. In the Physique Level-Of-Detail panel, we only support Rigid Skin Update. When using Deformable, the exporter treats it like Rigid.
 
Linking your skinned object
Please do not attach a skin to a bone in the hierarchy below that of which the skin is bound. This causes the mesh to translate twice, once for the space warp binding and another for the child translation. You can create a node above the Bip01or base node the skin is attached to, or use Max5's character node to organize a bone structure and skin together.
 
Scaling your skinned object
Do not scale a mesh after binding. If you scale a mesh you must unbind it first and rebind it after it has been properly scaled and translated. Scale it first and reset its transforms before you bind it to the bone system for best results.
 
Morph and Skin work together
Even though we support combining skin & morph targets we do not suggest it. If you want to make a character have facial animation morph targets, detach the head from the rest of the body and have it attached to the head bone as a direct link. The head mesh can use a morph target and translate via its relation with the head bone while the body uses a skin or physique modifier. When both modifiers are combined on a mesh it is MUCH slower as all the vertices are being transformed twice, once in software and once in hardware. Please take this into consideration when making characters that have facial expression.
 
Morph Targets
The Morph Modifier and Morph compound object are both supported in Gamebryo. We have found the Morph Modifier more reliable then the compound object in Max. Morph is inherently slower than skinning due to the fact that morphing is still done in software. However, there are many things that are easier to do with morph targets then with bone movement. Suggested uses for Morph targets are things like Animated Flags, facial expression and non-uniform scales.