Fix #138168: Weightpainting: Smooth Operator does not respect locked flag
`BKE_object_defgroup_subset_from_select_type` does not consider locked status of vertex group, ends up smoothing all vgroup when `deform pose bones` is selected. Pull Request: https://projects.blender.org/blender/blender/pulls/138435
This commit is contained in:
committed by
Pratik Borhade
parent
6d9b9dd2c3
commit
4627e0d3d0
@@ -793,12 +793,15 @@ bool *BKE_object_defgroup_subset_from_select_type(Object *ob,
|
||||
case WT_VGROUP_BONE_DEFORM: {
|
||||
int i;
|
||||
defgroup_validmap = BKE_object_defgroup_validmap_get(ob, *r_defgroup_tot);
|
||||
const bool *locked_vgroups = BKE_object_defgroup_lock_flags_get(ob, *r_defgroup_tot);
|
||||
*r_subset_count = 0;
|
||||
for (i = 0; i < *r_defgroup_tot; i++) {
|
||||
defgroup_validmap[i] &= !(locked_vgroups && locked_vgroups[i]);
|
||||
if (defgroup_validmap[i] == true) {
|
||||
*r_subset_count += 1;
|
||||
}
|
||||
}
|
||||
MEM_SAFE_FREE(locked_vgroups);
|
||||
break;
|
||||
}
|
||||
case WT_VGROUP_BONE_DEFORM_OFF: {
|
||||
|
||||
Reference in New Issue
Block a user