(an if statement surrounding Multi-Paint still checks the lock flags to see if it should bother changing anything)
Also, I changed lock's redistribution method so that if there was no enough space
on other unlocked groups, it tries to keep the new weights' ratios to each other
Also, the color display now only shows colors for the areas that are shared by the selected groups.
Finally, Multi-Paint responds to auto normalize, it determines when it can not be edited.
Added a basic multiple bone group paint feature "Multi-Paint" and its corresponding checkbox next to "Auto Normalize," but I need to access the ToolSettings for it in armature to make bone selection function/draw correctly
When you multi-paint, it paints on selected bones while keeping the weight ratios on a vertex of the selected groups the same. You can't currently multi-paint on a vertex with a locked deform group.
I added the first version of multi-bone selection for faster, temporary locking/unlocking; right now, if multiple bones are selected, the selection is considered unlocked, despite any vgroup checkbox status.
Every other group is considered locked.
paint_vertex.c
A modified Auto Normalize was inserted to normalize the active group normally instead of locking the values: it was causing the active group to steal weights from locked groups if the active group had a weight of 1.0, and that destroyed the locked groups deformations.
Made my 3 new buttons only appear in weight paint mode when there are vertex groups present
in properties_data_mesh.py
I took the now redundant check box out of properties_data_mesh.py
I took out unnecessary code (resulting from copy/paste) from my lock all, unlock all, and invert all functions of object/object_vgroup.c
(and I got rid of a new line in paint_vertex.c :) )
unlocked misc vertex groups should no longer have any involvement in the redistribution of weights.
I may need a better auto normalize solution, however, because the weights can become 0 with enough division.
Tweaked get_locked_flag() so 'i' wasn't initialized twice
Fixed a problem in do_weight_paint_vertex() that involved accidentally auto normalizing a locked group incorrectly if you painted an unlocked group.
for durian we had camera rigs which needed to have the parent transformed rather then the camera, for this reason I made fly mode fly the parent rather then the camera its self.
Make this a preference and use this for view camera/view locking too.
previous fix unintentionally made linking groups also add objects to the scene,
tested this more throughly, its ensured only to run on append and not to conflict with group linking/appending.
Linking in groups also ended up adding those objects to the current
scene that we're linking the group in to. This is a regression. It
leads to more work (and/or confusion) from animators when just trying
to get a character into a shot file to start animating it (see my
notes on my blog for the proper workflow regarding this).
Reverting r36762, which caused this mess.
some functions had vague names, I even ended up re-writing some of these functions by accident!
also added doxy comments.
* ED_view3d_win_to_3d (was window_to_3d)
* ED_view3d_win_to_delta (was window_to_3d_delta)
* ED_view3d_win_to_vector (was window_to_3d_vector / viewvector)
* ED_view3d_win_to_segment_clip (was viewline)
* ED_view3d_win_to_ray (was viewray)