diff options
author | Germano Cavalcante <germano.costa@ig.com.br> | 2020-04-01 02:57:18 +0300 |
---|---|---|
committer | Germano Cavalcante <germano.costa@ig.com.br> | 2020-04-01 02:57:33 +0300 |
commit | 18fc4155fd4299d61789aa0d5b9c1c3f7883636b (patch) | |
tree | d22d05ee8f7e84b3bb296a844e320fe32cacd9cf /source/blender/modifiers/intern/MOD_weld.c | |
parent | bcd3c3cb57e3fa809862f3c0ec8a202fa2a58a18 (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.c | 5 |
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); |