forked from bartvdbraak/blender
Bugfix: separate mesh did not preserve UV/Color layers.
This commit is contained in:
parent
a5b30906ad
commit
e5d61c7f41
@ -1342,11 +1342,14 @@ static int mesh_separate_selected(Scene *scene, Base *editbase)
|
|||||||
ED_base_object_select(basenew, BA_DESELECT);
|
ED_base_object_select(basenew, BA_DESELECT);
|
||||||
|
|
||||||
/* 2 */
|
/* 2 */
|
||||||
basenew->object->data= menew= add_mesh(me->id.name); /* empty */
|
basenew->object->data= menew= add_mesh(me->id.name+2); /* empty */
|
||||||
assign_matarar(basenew->object, give_matarar(obedit), *give_totcolp(obedit)); /* new in 2.5 */
|
assign_matarar(basenew->object, give_matarar(obedit), *give_totcolp(obedit)); /* new in 2.5 */
|
||||||
me->id.us--;
|
me->id.us--;
|
||||||
make_editMesh(scene, basenew->object);
|
make_editMesh(scene, basenew->object);
|
||||||
emnew= menew->edit_mesh;
|
emnew= menew->edit_mesh;
|
||||||
|
CustomData_copy(&em->vdata, &emnew->vdata, CD_MASK_EDITMESH, CD_DEFAULT, 0);
|
||||||
|
CustomData_copy(&em->edata, &emnew->edata, CD_MASK_EDITMESH, CD_DEFAULT, 0);
|
||||||
|
CustomData_copy(&em->fdata, &emnew->fdata, CD_MASK_EDITMESH, CD_DEFAULT, 0);
|
||||||
|
|
||||||
/* 3 */
|
/* 3 */
|
||||||
/* SPLIT: first make duplicate */
|
/* SPLIT: first make duplicate */
|
||||||
@ -1389,6 +1392,8 @@ static int mesh_separate_selected(Scene *scene, Base *editbase)
|
|||||||
/* 5 */
|
/* 5 */
|
||||||
load_editMesh(scene, basenew->object);
|
load_editMesh(scene, basenew->object);
|
||||||
free_editMesh(emnew);
|
free_editMesh(emnew);
|
||||||
|
MEM_freeN(menew->edit_mesh);
|
||||||
|
menew->edit_mesh= NULL;
|
||||||
|
|
||||||
/* hashedges are invalid now, make new! */
|
/* hashedges are invalid now, make new! */
|
||||||
editMesh_set_hash(em);
|
editMesh_set_hash(em);
|
||||||
|
Loading…
Reference in New Issue
Block a user