[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [14206] trunk/blender/source/blender/ blenkernel/intern/modifier.c: Fixed bug #8597, Subsurf error

Nicholas Bishop nicholasbishop at gmail.com
Sat Mar 22 00:06:16 CET 2008


Revision: 14206
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=14206
Author:   nicholasbishop
Date:     2008-03-22 00:06:15 +0100 (Sat, 22 Mar 2008)

Log Message:
-----------
Fixed bug #8597, Subsurf error

This was actually an error with the array modifier. Merging vertices would sometimes create degenerate faces (e.g. face.v1 == face.v3)

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/modifier.c

Modified: trunk/blender/source/blender/blenkernel/intern/modifier.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/modifier.c	2008-03-21 22:44:12 UTC (rev 14205)
+++ trunk/blender/source/blender/blenkernel/intern/modifier.c	2008-03-21 23:06:15 UTC (rev 14206)
@@ -1010,7 +1010,7 @@
 		numFaces++;
 
 		/* if the face has fewer than 3 vertices, don't create it */
-		if(mf->v3 == 0) {
+		if(mf->v3 == 0 || (mf->v1 && (mf->v1 == mf->v3 || mf->v1 == mf->v4))) {
 			numFaces--;
 			DM_free_face_data(result, numFaces, 1);
 		}
@@ -1032,7 +1032,7 @@
 			numFaces++;
 
 			/* if the face has fewer than 3 vertices, don't create it */
-			if(mf2->v3 == 0) {
+			if(mf2->v3 == 0 || (mf->v1 && (mf->v1 == mf->v3 || mf->v1 == mf->v4))) {
 				numFaces--;
 				DM_free_face_data(result, numFaces, 1);
 			}





More information about the Bf-blender-cvs mailing list