diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2014-10-04 14:52:06 +0400 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2014-10-04 14:54:00 +0400 |
commit | 8ac3c3d3ee229ba5b2df90f2276db1049bd104cc (patch) | |
tree | fa40b13ec78420815c718ae471f2751504fa6f86 /source | |
parent | 60bdb7da48aa340f41b3e9b9f9a2a79923c6c827 (diff) |
Fix T42065: Shading issue using Array modifier
Gah... Dirty normal flag should be set on *real* final dm, after merge is done. :/
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/modifiers/intern/MOD_array.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/source/blender/modifiers/intern/MOD_array.c b/source/blender/modifiers/intern/MOD_array.c index bae75d8693f..4dbe28e8a59 100644 --- a/source/blender/modifiers/intern/MOD_array.c +++ b/source/blender/modifiers/intern/MOD_array.c @@ -704,13 +704,6 @@ static DerivedMesh *arrayModifier_doArray( } /* done capping */ - /* In case org dm has dirty normals, or we made some merging, mark normals as dirty in new dm! - * TODO: we may need to set other dirty flags as well? - */ - if (use_recalc_normals) { - result->dirty |= DM_DIRTY_NORMALS; - } - /* Handle merging */ tot_doubles = 0; if (use_merge) { @@ -729,6 +722,14 @@ static DerivedMesh *arrayModifier_doArray( } MEM_freeN(full_doubles_map); } + + /* In case org dm has dirty normals, or we made some merging, mark normals as dirty in new dm! + * TODO: we may need to set other dirty flags as well? + */ + if (use_recalc_normals) { + result->dirty |= DM_DIRTY_NORMALS; + } + return result; } |