diff options
author | Antony Riakiotakis <kalast@gmail.com> | 2014-05-08 20:15:36 +0400 |
---|---|---|
committer | Antony Riakiotakis <kalast@gmail.com> | 2014-05-08 20:15:46 +0400 |
commit | 0d85be59506efebf7df691f80ed24d12c767b3ae (patch) | |
tree | a6e6e31962a54195d082fe2c8200fd94c9051fa3 /source/blender/blenkernel/intern/DerivedMesh.c | |
parent | 5a8d7af642d8770cfc8e3b120f7de021efa1cbb9 (diff) |
Fix T39950, part 2.
Warn when a modifier does not support optimal drawing and mask/hidden
parts display.
User report was that hidden parts became visible after adding a new
modifier subdivision. Subdivision was added with the Ctrl+number keys.
First part of the fix was to make sure we add a multires instead of the
subsurf modifier in sculpt mode with the PageUp/Down Ctrl+number keys.
We can't really stop users from having added a subsurf modifier already.
We could be "smart" and convert subsurf to mulrires upon entering sculpt
mode maybe but that can easily backfire - or users may actually want
that. For now, just warn that the modifier won't support Hiding/Masking
and optimal drawing.
Diffstat (limited to 'source/blender/blenkernel/intern/DerivedMesh.c')
-rw-r--r-- | source/blender/blenkernel/intern/DerivedMesh.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/DerivedMesh.c b/source/blender/blenkernel/intern/DerivedMesh.c index 72e39fbb7c2..43ee33e61cb 100644 --- a/source/blender/blenkernel/intern/DerivedMesh.c +++ b/source/blender/blenkernel/intern/DerivedMesh.c @@ -1593,7 +1593,7 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos continue; } if (sculpt_mode && - (!has_multires || multires_applied || ob->sculpt->bm)) + (!has_multires || multires_applied || sculpt_dyntopo)) { bool unsupported = false; @@ -1614,6 +1614,9 @@ static void mesh_calc_modifiers(Scene *scene, Object *ob, float (*inputVertexCos modifier_setError(md, "Not supported in sculpt mode"); continue; } + else { + modifier_setError(md, "Hide, Mask and optimized display disabled"); + } } if (needMapping && !modifier_supportsMapping(md)) continue; if (useDeform < 0 && mti->dependsOnTime && mti->dependsOnTime(md)) continue; |