06-04-2024, 08:22 AM
(This post was last modified: 06-04-2024, 08:31 AM by josemendez.)
(06-04-2024, 07:11 AM)kodra Wrote: I'm a little confused about this. I thought the Softbody, when used with SoftbodySkinner, acts very similarly to skeleton animation: each particle is just like a "bone" in skeleton, and when a particle moves, the vertices with non-zero weights binding to that particle moves along. Just like how skeleton animation works, right?
Not really. What you describe is only the very last step, and is applied after blendshapes would. Softbody simulation works using shape-matching, which tries to match the current shape of the softbody to the original/rest shape of the mesh. This involves preprocessing a lot of data about the original shape, which is stored in the blueprint.
Blendshapes modify the original shape of the mesh, prior to skeletal deformation. The reason is that you want to be able to alter the shape of the mesh and *then* have it animate, otherwise the mesh would blend towards the blendshape at rest.
So the desired order would be:
Rest mesh -> blend shapes/recalculate rest mesh -> lerp(softbody simulation,skeletal animation, influence)
Note that skeletal animation does not happen either before or after softbody simulation, but at the same time. Then, the painted per-vertex influence is used to choose between both.