I felt free to add a few features. Now it support scaling, I believe I correctly followed a way described in original paper
Also, there are small changes for convenience: slider for blending between linear blend and DQ envelope, so you can use weight maps for that purpose. Also, it's possible to choose envelope property - in case it's name is different than default. For example, this can happen when using envelope presets. I've added the same reference, to Cleanup Painted Weights compound too.
So, how to use DQ compounds:
- Apply standard envelope operator, mute it.
- Apply unsimulated ICE tree in animation region.
- First, connect Cleanup Painted Weights compound. In case your envelope property has a different name than default ("EnvelopWeightCls.Envelope_Weights"), point to enevlope property - a black-white gradient icon under envelope cluster.
- Connect "Dual Quaternion Deformation With Scaling" compound, point to envelope property.
- Connect your envelope group to both compounds. If you don't have one, go to Animate Panel, Envelope> Select Deformer From Envelope, create group.
- It still doesn't support animated bone length. Workaround is to use nulls, with scaling linked to bone length, or just to distribute nulls over bones.
- When you apply standard envelope, your mesh should be at world zero transform.
- As it described in original paper, it still can cause polygon flipping at 180 degree, but this time, this degree is relative to another deformers, involved in blending - not to static kine state, so it's really hard to go in this. If flipping still happen, you can avoid it by using intermediate deformers.Download compounds
Cheers, and thanks to Grahame again!