[Bf-blender-cvs] [9a20f68] strand_editmode: Check mesh samples for zero weights on eval to detect invalid/unusable samples.

Lukas Tönne noreply at git.blender.org
Mon Apr 18 18:22:52 CEST 2016


Commit: 9a20f68295f94ef406c7edf8720f7668ff7fb954
Author: Lukas Tönne
Date:   Mon Apr 18 17:48:25 2016 +0200
Branches: strand_editmode
https://developer.blender.org/rB9a20f68295f94ef406c7edf8720f7668ff7fb954

Check mesh samples for zero weights on eval to detect invalid/unusable samples.

===================================================================

M	source/blender/blenkernel/intern/mesh_sample.c

===================================================================

diff --git a/source/blender/blenkernel/intern/mesh_sample.c b/source/blender/blenkernel/intern/mesh_sample.c
index e798865..1549037 100644
--- a/source/blender/blenkernel/intern/mesh_sample.c
+++ b/source/blender/blenkernel/intern/mesh_sample.c
@@ -60,7 +60,12 @@ bool BKE_mesh_sample_eval(DerivedMesh *dm, const MeshSample *sample, float loc[3
 	
 	if (BKE_mesh_sample_is_volume_sample(sample)) {
 		/* VOLUME SAMPLE */
+		
+		if (is_zero_v3(sample->orig_weights))
+			return false;
+		
 		copy_v3_v3(loc, sample->orig_weights);
+		return true;
 	}
 	else {
 		/* SURFACE SAMPLE */
@@ -106,9 +111,9 @@ bool BKE_mesh_sample_eval(DerivedMesh *dm, const MeshSample *sample, float loc[3
 			madd_v3_v3fl(edge, nor, -dot_v3v3(edge, nor));
 			normalize_v3_v3(tang, edge);
 		}
+		
+		return true;
 	}
-	
-	return true;
 }
 
 bool BKE_mesh_sample_shapekey(Key *key, KeyBlock *kb, const MeshSample *sample, float loc[3])




More information about the Bf-blender-cvs mailing list