PDA

View Full Version : non-normalized skinCluster weights


kustaa
04-04-2006, 05:34 AM
i was hoping to use non-normalized weights for facial setup. that way i could have overlapping deformations from different joints( total weight going over 1). so far ive done these overlapping deformations with clusters but since they are harder to control and much more slower than skinCluster i thought this would have been solution. but the problem is that when i assign weights over 1, those components scale up from origo. ive tried zeroing my joint transforms in many ways but it doesnt help. am i missing something or is this just the way skinCluster behaves?

thanks!
Kustaa

isoparmB
04-06-2006, 01:09 PM
I think it would be better for you to use clusters, as the relative attribute really helps when your character starts moving. If you use joints with non-normalized weights, you'll encounter problems once you start translating your character (and along with it your facial joints). You'll run into some kind of double transform issue because of the non-normalized weights, unless you have some kind of setup which is based on a deformation order trick (and if you leave your facial joints where you skinned them, with a separate skin cluster to move the entire head along with the body).

And yes, I've also encountered problems with skin vertices with skin weight totals below or above one. You could try multiple-skin cluster setups for experimentation, but I think you'll run ino these problems and be better off with either clusters or normalized skin joint setups.

kustaa
04-07-2006, 11:15 AM
thanks for your reply isoparmB,
your right about those double transforms. but incase of over-1-weights-skincluster there doesnt have to be any transforms that "double-transform" happens. (sounds clear eh =)). its really weird how clusters can be so slow compared to skincluster. i ran dgtimer on one of my rigs that has cluster based facial setup. and even 100vertices cluster is slower than skincluster with 20bones on 2k mesh.

i found one way to combine multiple skinclusters on one mesh:
-duplicate the main mesh and for that duplicated mesh create skincluster for the expression bones(lips, oculi..).
- create skincluster for the main mesh with all the actual deformation bones(neck, head, jaw..)
-connect expressionMesh.outMesh to mainMesh intermediate shape (.inMesh)

those expression bones need to be parented to world and not follow the rig, otherwise there will be that infamous double transformation.
of course this isnt much more controllable than clusters but atleast the speed increase is big =)
Kustaa

isoparmB
04-11-2006, 11:22 AM
i found one way to combine multiple skinclusters on one mesh:
-duplicate the main mesh and for that duplicated mesh create skincluster for the expression bones(lips, oculi..).
- create skincluster for the main mesh with all the actual deformation bones(neck, head, jaw..)
-connect expressionMesh.outMesh to mainMesh intermediate shape (.inMesh)

Kustaa

Interesting.... never tried it that way. Sort of like deforming for the facial expressions first and feeding the result to do transform deformation. Nice.

CGTalk Moderation
04-11-2006, 11:22 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.