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:
authorCampbell Barton <ideasman42@gmail.com>2013-06-02 04:20:26 +0400
committerCampbell Barton <ideasman42@gmail.com>2013-06-02 04:20:26 +0400
commit075a910d72c9745c0476da7c1cc47337179c5085 (patch)
tree4793dddb9c8d898627ed39d8d5799aa1902dc3db /source/blender/modifiers
parent67fb85b5f2da6fa448a175a386e80af19e89a3c0 (diff)
fix regression in reducing normal recalculation [#35595],
pass the dirty-normal-state from the input dm to the output.
Diffstat (limited to 'source/blender/modifiers')
-rw-r--r--source/blender/modifiers/intern/MOD_array.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/source/blender/modifiers/intern/MOD_array.c b/source/blender/modifiers/intern/MOD_array.c
index 902afd2ed41..36461851162 100644
--- a/source/blender/modifiers/intern/MOD_array.c
+++ b/source/blender/modifiers/intern/MOD_array.c
@@ -563,7 +563,9 @@ static DerivedMesh *arrayModifier_doArray(ArrayModifierData *amd,
result = CDDM_from_bmesh(bm, FALSE);
- if ((amd->offset_type & MOD_ARR_OFF_OBJ) && (amd->offset_ob)) {
+ if ((dm->dirty & DM_DIRTY_NORMALS) ||
+ ((amd->offset_type & MOD_ARR_OFF_OBJ) && (amd->offset_ob)))
+ {
/* Update normals in case offset object has rotation. */
result->dirty |= DM_DIRTY_NORMALS;
}