decimator - merge flags when collapsing edges / verts, so seams and edges draw flags are kept.
This commit is contained in:
@@ -760,8 +760,11 @@ static int bm_edge_collapse(BMesh *bm, BMEdge *e_clear, BMVert *v_clear, int r_e
|
||||
|
||||
BM_edge_kill(bm, e_clear);
|
||||
|
||||
v_other->head.hflag |= v_clear->head.hflag;
|
||||
BM_vert_splice(bm, v_clear, v_other);
|
||||
|
||||
e_a_other[1]->head.hflag |= e_a_other[0]->head.hflag;
|
||||
e_b_other[1]->head.hflag |= e_b_other[0]->head.hflag;
|
||||
BM_edge_splice(bm, e_a_other[0], e_a_other[1]);
|
||||
BM_edge_splice(bm, e_b_other[0], e_b_other[1]);
|
||||
|
||||
@@ -806,8 +809,10 @@ static int bm_edge_collapse(BMesh *bm, BMEdge *e_clear, BMVert *v_clear, int r_e
|
||||
|
||||
BM_edge_kill(bm, e_clear);
|
||||
|
||||
v_other->head.hflag |= v_clear->head.hflag;
|
||||
BM_vert_splice(bm, v_clear, v_other);
|
||||
|
||||
e_a_other[1]->head.hflag |= e_a_other[0]->head.hflag;
|
||||
BM_edge_splice(bm, e_a_other[0], e_a_other[1]);
|
||||
|
||||
// BM_mesh_validate(bm);
|
||||
|
Reference in New Issue
Block a user