[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [36646] branches/bmesh/blender/source/ blender: =bmesh= fixed non-multires sculpt; excluding the DAG update won' t work here, since the tesselation has to be recalculated.

Joseph Eagar joeedh at gmail.com
Thu May 12 19:47:27 CEST 2011


Revision: 36646
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=36646
Author:   joeedh
Date:     2011-05-12 17:47:26 +0000 (Thu, 12 May 2011)
Log Message:
-----------
=bmesh= fixed non-multires sculpt; excluding the DAG update won't work here, since the tesselation has to be recalculated.

Modified Paths:
--------------
    branches/bmesh/blender/source/blender/bmesh/operators/bevel.c
    branches/bmesh/blender/source/blender/editors/sculpt_paint/sculpt.c

Modified: branches/bmesh/blender/source/blender/bmesh/operators/bevel.c
===================================================================
--- branches/bmesh/blender/source/blender/bmesh/operators/bevel.c	2011-05-12 16:49:53 UTC (rev 36645)
+++ branches/bmesh/blender/source/blender/bmesh/operators/bevel.c	2011-05-12 17:47:26 UTC (rev 36646)
@@ -427,7 +427,8 @@
 		}
 		
 		e = BM_Make_Edge(bm, firstv, lastv, bm_firstfaceloop(faces[i])->e, 1);
-		BM_Copy_Attributes(bm, bm, bm_firstfaceloop(faces[i])->prev->e, e);
+		if (bm_firstfaceloop(faces[i])->prev->e != e) 
+			BM_Copy_Attributes(bm, bm, bm_firstfaceloop(faces[i])->prev->e, e);
 		BLI_array_append(edges, e);
 		
 		f = BM_Make_Ngon(bm, verts[0], verts[1], edges, BLI_array_count(verts), 0);

Modified: branches/bmesh/blender/source/blender/editors/sculpt_paint/sculpt.c
===================================================================
--- branches/bmesh/blender/source/blender/editors/sculpt_paint/sculpt.c	2011-05-12 16:49:53 UTC (rev 36645)
+++ branches/bmesh/blender/source/blender/editors/sculpt_paint/sculpt.c	2011-05-12 17:47:26 UTC (rev 36646)
@@ -1414,7 +1414,7 @@
 		proxy= BLI_pbvh_node_add_proxy(ss->pbvh, nodes[n])->co;
 
 		sculpt_brush_test_init(ss, &test);
-
+		
 		BLI_pbvh_vertex_iter_begin(ss->pbvh, nodes[n], vd, PBVH_ITER_UNIQUE) {
 			if(sculpt_brush_test(&test, vd.co)) {
 				const float fade = bstrength*tex_strength(ss, brush, vd.co, test.dist)*frontface(brush, an, vd.no, vd.fno);
@@ -3390,8 +3390,9 @@
 	if(ob->derivedFinal) /* VBO no longer valid */
 		GPU_drawobject_free(ob->derivedFinal);
 
+	DAG_id_tag_update(&ob->id, OB_RECALC_DATA);
+	
 	if(ss->modifiers_active) {
-		DAG_id_tag_update(&ob->id, OB_RECALC_DATA);
 		ED_region_tag_redraw(ar);
 	}
 	else {




More information about the Bf-blender-cvs mailing list