Commit Graph

25195 Commits

Author SHA1 Message Date
Jason Hays
0e7a42ebfa Made Multi-Paint and Locking more independent to better support future features.
(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
2011-06-16 19:05:05 +00:00
Jason Hays
53baa881b2 Made Multi-Paint support vertices containing locked groups
Changed locking system to check the amount of space in unlocked groups ahead of time.
2011-06-14 19:11:01 +00:00
Jason Hays
51fe8aaec2 Made a var that determines if the color can be black (so it knows if it should use CLAMP or not) 2011-06-13 17:16:44 +00:00
Jason Hays
a24dac8b8f Fixed Multi-Paint so that it doesn't stop painting unless the maximum cap has been met.
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.
2011-06-10 19:47:53 +00:00
Jason Hays
42e062fc88 Made the Multi-Paint check box control what was being drawn so that it doesn't always draw the groups together when multiple bones are selected. 2011-06-09 16:38:47 +00:00
Jason Hays
b967d8695f Heard that multi-bone selection would be better used for painting multiple bones; took out select lock.
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.
2011-06-08 19:05:17 +00:00
Jason Hays
70895a6789 editarmature.c and paint_vertex.c
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.
2011-06-07 17:59:38 +00:00
Jason Hays
23737357ff Added a hard coded check box to the vertex group list items in interface/interface_templates.c list_item_row()
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 :) )
2011-06-03 16:08:03 +00:00
Jason Hays
8684d99e61 Made misc vgroups unable to change bone groups' weights when auto normalize is active
Added buttons for locking all vgroups, unlocking all vgroups, and inverting the locks of all vgroups
2011-06-02 17:28:04 +00:00
Jason Hays
8038dcf91d My earlier custom auto normalize is no longer necessary to maintain inner group ratios (since the system changed) 2011-06-02 14:15:07 +00:00
Jason Hays
d7758d77ee Fixed the redistribute_weight_change() function so that it spreads the change evenly and cannot /0. 2011-06-01 19:21:36 +00:00
Jason Hays
ca6929bbe7 I've begun treating unlocked misc vertex groups differently than unlocked bone groups-
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.
2011-06-01 17:04:32 +00:00
Jason Hays
392bf56a97 Remembered to free memory in gen_lck_flags() when it returned NULL when there were no locks present.
Changed the lock system to redistribute changes of unlocked groups to other unlocked groups instead of just maintaining ratios within locked groups.
2011-06-01 15:45:09 +00:00
Jason Hays
54d2034a2d paint_vertex.c
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.
2011-05-31 00:52:02 +00:00
Jason Hays
09b5d512c8 2011-05-30 16:33:23 +00:00
Jason Hays
3cde378fea 2011-05-27 19:13:54 +00:00
Jason Hays
ee9445041f 2011-05-23 17:26:50 +00:00
Jason Hays
85febf4549 2011-05-23 17:26:14 +00:00
Campbell Barton
3d5ba20f66 fix [#26618] StringProperty with sub_type of FILE_PATH not updated correctly from icon 2011-05-23 10:14:07 +00:00
Campbell Barton
f5ec4cf4e9 fix own mistake [#27451] Flip to Top / Flip to Bottom menuitems on right click on header not working
also get rig of more shadowed vars (-Wshadow).
2011-05-23 08:14:29 +00:00
Campbell Barton
af49b5f6c9 own recent commit broke zoom to mouseloc 2011-05-23 02:59:29 +00:00
Campbell Barton
b222863336 fix [#27459] Flymode moves parent
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.
2011-05-23 02:53:30 +00:00
Campbell Barton
0d26333eb5 fix view3d_persp_mat4, which gave incorrect translation, rename to ED_view3d_to_m4. added doxygen docs. 2011-05-23 02:23:03 +00:00
Campbell Barton
bf65ed9447 fix [#27443] "Make single user Material+Tex" doesn't work for textures 2011-05-22 17:10:24 +00:00
Campbell Barton
d02480cdaa remove / comment unused code, patch by nico_ga on IRC with some edits. 2011-05-22 16:29:51 +00:00
Campbell Barton
04e157304a - view dolly now quits on pressing escape (if activated from the search menu).
- adding new bones now makes them active.
2011-05-22 11:36:56 +00:00
Campbell Barton
b07bdf367c file had non utf8 characters. 2011-05-22 05:36:11 +00:00
Campbell Barton
6e39d908a9 quiet compiler warnings for -Wundef 2011-05-22 04:25:31 +00:00
Campbell Barton
b1ddf90239 fix [#27458] Links for Logic Bricks no longer work
event->mval wasn't being set in some cases by the event system.
2011-05-22 04:05:09 +00:00
Daniel Salazar
6727ed1ca4 correct a tooltip misspell 2011-05-21 23:44:36 +00:00
Campbell Barton
e038b25579 view3d function naming, no functional changes. 2011-05-21 08:56:37 +00:00
Campbell Barton
b1025f2a30 fix [#27437] Appending armatures with custom bone shapes brings no custom objects into scene.. impossible to edit
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.
2011-05-21 07:15:36 +00:00
Campbell Barton
6c4cd8d9f3 no functional changes, make give_base_to_objects() arguments less confusing. 2011-05-21 06:48:19 +00:00
Joshua Leung
1890b7f431 Bugfix [#27452] Wrong linking of character groups
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.
2011-05-21 06:04:44 +00:00
Campbell Barton
4c37fe91f3 patch [#27449] bpy_script_paths() return path reversed [patch]
from Dan Eicher (dna)
2011-05-21 05:34:20 +00:00
Campbell Barton
d16da799fb change transform to round at 0.5 for fcurves.
this gave noticeable issue when transforming int/fcurve's below zero.
2011-05-20 18:19:29 +00:00
Campbell Barton
9563743f4e was using the wrong rna type for GRAPH_OT_select_leftright 2011-05-20 18:00:19 +00:00
Campbell Barton
259582235c error in recent commit. 2011-05-20 16:43:23 +00:00
Campbell Barton
b100f9d79d edit gp_stroke_convertcoords not to modify the mval passed to it & make some mval args const elsewhere too. 2011-05-20 14:11:05 +00:00
Campbell Barton
363bfdc46a use consistant arguments to ED_view3d_win_* funcs, a single float vector rather then 2 floats. 2011-05-20 13:50:41 +00:00
Campbell Barton
53d5761c94 function rename to give clearer meaning that they change from window to 3d coordinates.
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)
2011-05-20 13:09:34 +00:00
Campbell Barton
c833fff638 replace checks with rv3d->persp with rv3d->is_persp since in these cases it only matters if its a perspective view matrix, this wouldn't work right for camera views. 2011-05-20 11:15:44 +00:00
Campbell Barton
4916c44af8 simplify window_to_3d_vector() and call it from viewline()
also update python view function to match.
2011-05-20 10:28:40 +00:00
Campbell Barton
2999d0fad9 rename mul_project_m4_v4 to mul_project_m4_v3. 2011-05-20 10:09:03 +00:00
Nathan Letwory
3ddaaa3784 Remedy compile error on windows/msvc introduced in r36787. 2011-05-20 08:52:52 +00:00
Campbell Barton
9f766c71b0 use event->mval rather then subtracting ar->winrct.x / y from event->x / y 2011-05-20 07:40:05 +00:00
Campbell Barton
2338765726 renaming bones didnt update update the view3d lock bone name. 2011-05-20 05:39:56 +00:00
Campbell Barton
170716ca53 use BKE_area_find_region_type in place of inline loops (no functional changes). 2011-05-20 05:27:31 +00:00
Campbell Barton
984d2e42e4 make api functions for converting rv3d->camzoom, so the odd logic for this isn't inlined all over. 2011-05-20 04:14:29 +00:00
Campbell Barton
c07012b41e int values were not drawing curve handles, yet the handles could still be selected and transformed, and different handle types set. disable this check and draw curve handles for int fcurves. 2011-05-20 01:02:00 +00:00