Thursday, April 16, 2015

Weight Painting Helper tool Sketches


Here are some sketches i wrote today about some weight painting enveloping 3d tools that may be helpful.  I haven't put the actual code for this together yet, so this is like a sort of brainstorm for writing the tools later.  I will use some of the rivet python code I wrote and posted earlier python rivet code in writing the smooth weight paint preview tool.

Happy 3d sketching,

//Secondary Border Smoothing
given vertices selected i want something that can
1. hold all joints but 2 joints. 
a. the one we wish to remove weight from (the secondary joint —it finds this by using selected vertex’s weight 1 influence)
b. the one we wish to add weight to (like the upper lip joint if doing upper lip — this is fixed)
2. smooth weights

results: a smoother border but with control that the border is only weighted to exactly 2 influences.

//Smooth movement of lip preview for weight painting
work with only 1 overall parent selected (it uses all joints children excluding overall parent)—  add curve to overall parent (example curve system is parented to the upper lip joint , that is — the upper lip joint is the overall parent to the secondary helper joints)

works with only
joint                 — add movement to joint directly (no animation can be saved for joint)
1 group parent to joint  — add movement to top group
2 group parents to joint — add movement to top group

works with only 4 movers
each mover is placed so that there are 2 movers near one end like figure above.

result:  4 controls that can move the lip in a smooth way (even when there are 20 or 40+ joints used), it should help with weight painting.

nice to have: easy to uninstall

1.python so can use old rivet code
2.for movers maybe 2 locator guides should be position one is named na_l_end_A, and na_l_end_B, you just snap them where you want the mover and run tool which knows how to find these names.
3.for drawing curve, maybe use - x world to + x world and detect order of joints, then draw a curve with a cv at exactly every joint.