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:
authorBastien Montagne <montagne29@wanadoo.fr>2014-10-06 01:10:44 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2014-10-15 15:06:06 +0400
commit4c4c7724966e779e5879a721c1f663088c775c3f (patch)
treeed73df0090f4e52229cfb72f481821d76366f2bf /source/blender
parent20f0ce5258f1291ac342cbd00099474c79ccc385 (diff)
Fix T41983: Array Modifier "Merge" bug?
We messed up previous fix, in 'simplified' translated merge case... :(
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/modifiers/intern/MOD_array.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/source/blender/modifiers/intern/MOD_array.c b/source/blender/modifiers/intern/MOD_array.c
index 4dbe28e8a59..40db49afef2 100644
--- a/source/blender/modifiers/intern/MOD_array.c
+++ b/source/blender/modifiers/intern/MOD_array.c
@@ -609,10 +609,13 @@ static DerivedMesh *arrayModifier_doArray(
int target = full_doubles_map[prev_chunk_index];
if (target != -1) {
target += chunk_nverts; /* translate mapping */
- if (!with_follow) {
- /* The rule here is to not follow mapping to chunk N-2, which could be too far
- * so if target vertex was itself mapped, then this vertex is not mapped */
- if (full_doubles_map[target] != -1) {
+ if (full_doubles_map[target] != -1) {
+ if (with_follow) {
+ target = full_doubles_map[target];
+ }
+ else {
+ /* The rule here is to not follow mapping to chunk N-2, which could be too far
+ * so if target vertex was itself mapped, then this vertex is not mapped */
target = -1;
}
}