Updated: May 28, 2020
This week we are learning about skinning algorithms and approaches.
We referenced the paper on NeuroSkinning: Automatic Skin Binding for production characters with deep graph networks, which talks about a learning system which takes the character mesh and the rig as inputs and outputs weights. These findings are then compared with the animations created by the artist (ground truth)
Goal of skinning: To find the weight of all the vertices
Direct Techniques/ Geometry Based skinning techniques:
1. Linear Blend Skinning
Single transformations, closed form.
v = sum(weights*bone transform*Mesh Vertices)
Biggest flaw candy wrapper effect as weighted average of two transforms results in the center of both those transforms.
Pinnochio uses LBS for various characters and standard animations.
Candy Wrapper Effect
2. Double Quaternion Skinning
Represents rotations and transistion as two quaternions. solves candy wrapper effect as quaternions are on the surface of a 4D sphere. Sometimes a twisting motion can be observed with this algorithm.
Painting weights is a tedious job for artists, there have been several ways of computing skin weights automatically to solve this problem.
Physics Based Algorithms
Data driven physics for soft tissue animation, building muscles underneath the mesh to see
the accurate animations. Building a helper to the bone rig to produce dynamic skinning. The jiggling effect can be achieved through physics based animations.
Example based Algorithms
Blending based on nearness to an artist's predefined pose.
3.Geodesic voxel binding
This says that "The higher weight should be on the element of skin closest to the bone"
This is not fine in scenarios of cloth and hair.