fix [#26193] Weightpainting on Mesh with Armature-Modifier fails if x-mirror and auto normalize is enabled
This commit is contained in:
@@ -1618,10 +1618,15 @@ static void do_weight_paint_vertex( /* vars which remain the same for every vert
|
|||||||
/* copy, not paint again */
|
/* copy, not paint again */
|
||||||
uw= defvert_verify_index(dv_mirr, (wpi->vgroup_mirror != -1) ? wpi->vgroup_mirror : vgroup);
|
uw= defvert_verify_index(dv_mirr, (wpi->vgroup_mirror != -1) ? wpi->vgroup_mirror : vgroup);
|
||||||
uw->weight= dw->weight;
|
uw->weight= dw->weight;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* important to normalize after mirror, otherwise mirror gets wight
|
||||||
|
* which has already been scaled down in relation to other weights,
|
||||||
|
* then scales a second time [#26193]. Tricky multi-paint code doesn't
|
||||||
|
* suffer from this problem - campbell */
|
||||||
do_weight_paint_auto_normalize_all_groups(dv_mirr, wpi->vgroup_validmap, wpi->do_auto_normalize);
|
do_weight_paint_auto_normalize_all_groups(dv_mirr, wpi->vgroup_validmap, wpi->do_auto_normalize);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
else {
|
||||||
/* use locks and/or multipaint */
|
/* use locks and/or multipaint */
|
||||||
float oldw;
|
float oldw;
|
||||||
|
|||||||
Reference in New Issue
Block a user