[Bf-blender-cvs] [3fb7986] fracture_modifier: fix: clustergroup centroid search didnt take obmat into account
Martin Felke
noreply at git.blender.org
Fri Feb 6 21:24:09 CET 2015
Commit: 3fb798666ae172e78867973dc29392ad495749c7
Author: Martin Felke
Date: Fri Feb 6 21:24:00 2015 +0100
Branches: fracture_modifier
https://developer.blender.org/rB3fb798666ae172e78867973dc29392ad495749c7
fix: clustergroup centroid search didnt take obmat into account
===================================================================
M source/blender/modifiers/intern/MOD_fracture.c
===================================================================
diff --git a/source/blender/modifiers/intern/MOD_fracture.c b/source/blender/modifiers/intern/MOD_fracture.c
index 5cec596..8f24abe 100644
--- a/source/blender/modifiers/intern/MOD_fracture.c
+++ b/source/blender/modifiers/intern/MOD_fracture.c
@@ -396,7 +396,7 @@ static void freeData(ModifierData *md)
}
-static void doClusters(FractureModifierData *fmd)
+static void doClusters(FractureModifierData *fmd, Object* obj)
{
/*grow clusters from all shards */
int k = 0;
@@ -437,8 +437,11 @@ static void doClusters(FractureModifierData *fmd)
for (s = shardlist.first; s; s = s->next ) {
KDTreeNearest n;
int index;
+ float co[3];
- index = BLI_kdtree_find_nearest(tree, s->centroid, &n);
+ mul_v3_m4v3(co, obj->obmat, s->centroid);
+
+ index = BLI_kdtree_find_nearest(tree, co, &n);
s->cluster_colors[0] = index;
}
@@ -1051,7 +1054,7 @@ static void do_fracture(FractureModifierData *fracmd, ShardID id, Object *obj, D
if (fracmd->frac_mesh->shard_count > 0)
{
- doClusters(fracmd);
+ doClusters(fracmd, obj);
}
/* here we REALLY need to fracture so deactivate the shards to islands flag and activate afterwards */
More information about the Bf-blender-cvs
mailing list