Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGermano Cavalcante <germano.costa@ig.com.br>2020-04-01 02:57:18 +0300
committerGermano Cavalcante <germano.costa@ig.com.br>2020-04-01 02:57:33 +0300
commit18fc4155fd4299d61789aa0d5b9c1c3f7883636b (patch)
treed22d05ee8f7e84b3bb296a844e320fe32cacd9cf /source/blender/modifiers/intern/MOD_weld.c
parentbcd3c3cb57e3fa809862f3c0ec8a202fa2a58a18 (diff)
Fix customdata interpolation being done multiple times in Weld Modifier
Diffstat (limited to 'source/blender/modifiers/intern/MOD_weld.c')
-rw-r--r--source/blender/modifiers/intern/MOD_weld.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/source/blender/modifiers/intern/MOD_weld.c b/source/blender/modifiers/intern/MOD_weld.c
index 11fd411459c..a7d3280b113 100644
--- a/source/blender/modifiers/intern/MOD_weld.c
+++ b/source/blender/modifiers/intern/MOD_weld.c
@@ -1489,6 +1489,8 @@ static void customdata_weld(
return;
}
+ CustomData_interp(source, dest, (const int *)src_indices, NULL, NULL, count, dest_index);
+
int src_i, dest_i;
int j;
@@ -1544,7 +1546,8 @@ static void customdata_weld(
}
}
else if (CustomData_layer_has_interp(dest, dest_i)) {
- CustomData_interp(source, dest, (const int *)src_indices, NULL, NULL, count, dest_index);
+ /* Already calculated.
+ * TODO: Optimize by exposing `typeInfo->interp`. */
}
else if (CustomData_layer_has_math(dest, dest_i)) {
const int size = CustomData_sizeof(type);