forked from bartvdbraak/blender
Fix #32596: bones in armature created from skin modifier have wrong envelope
values.
This commit is contained in:
parent
6cd32435a2
commit
5205927892
@ -1692,11 +1692,9 @@ static void skin_armature_bone_create(Object *skin_ob,
|
||||
|
||||
v = (e->v1 == parent_v ? e->v2 : e->v1);
|
||||
|
||||
bone = MEM_callocN(sizeof(EditBone),
|
||||
"skin_armature_bone_create EditBone");
|
||||
bone = ED_armature_edit_bone_add(arm, "Bone");
|
||||
|
||||
bone->parent = parent_bone;
|
||||
bone->layer = 1;
|
||||
bone->flag |= BONE_CONNECTED;
|
||||
|
||||
copy_v3_v3(bone->head, mvert[parent_v].co);
|
||||
@ -1704,8 +1702,6 @@ static void skin_armature_bone_create(Object *skin_ob,
|
||||
bone->rad_head = bone->rad_tail = 0.25;
|
||||
BLI_snprintf(bone->name, sizeof(bone->name), "Bone.%.2d", endx);
|
||||
|
||||
BLI_addtail(arm->edbo, bone);
|
||||
|
||||
/* add bDeformGroup */
|
||||
if ((dg = ED_vgroup_add_name(skin_ob, bone->name))) {
|
||||
ED_vgroup_vert_add(skin_ob, dg, parent_v, 1, WEIGHT_REPLACE);
|
||||
@ -1770,16 +1766,13 @@ static Object *modifier_skin_armature_create(struct Scene *scene,
|
||||
* a fake root bone (have it going off in the Y direction
|
||||
* (arbitrary) */
|
||||
if (emap[v].count > 1) {
|
||||
bone = MEM_callocN(sizeof(EditBone), "EditBone");
|
||||
bone = ED_armature_edit_bone_add(arm, "Bone");
|
||||
|
||||
copy_v3_v3(bone->head, me->mvert[v].co);
|
||||
copy_v3_v3(bone->tail, me->mvert[v].co);
|
||||
bone->layer = 1;
|
||||
|
||||
bone->head[1] = 1.0f;
|
||||
bone->rad_head = bone->rad_tail = 0.25;
|
||||
|
||||
BLI_addtail(arm->edbo, bone);
|
||||
}
|
||||
|
||||
if (emap[v].count >= 1) {
|
||||
|
Loading…
Reference in New Issue
Block a user