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:
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/blenkernel/intern/subsurf_ccg.c12
-rw-r--r--source/blender/modifiers/intern/MOD_subsurf.c2
2 files changed, 9 insertions, 5 deletions
diff --git a/source/blender/blenkernel/intern/subsurf_ccg.c b/source/blender/blenkernel/intern/subsurf_ccg.c
index f6337d6ed60..a3e4b47fd15 100644
--- a/source/blender/blenkernel/intern/subsurf_ccg.c
+++ b/source/blender/blenkernel/intern/subsurf_ccg.c
@@ -4758,11 +4758,15 @@ struct DerivedMesh *subsurf_make_derived_from_derived(
* this is to be investiated still to be sure we don't have
* regressions here.
*/
- prevSS = smd->mCache;
-#else
- ccgSubSurf_free(smd->mCache);
- smd->mCache = NULL;
+ if (use_gpu_backend) {
+ prevSS = smd->mCache;
+ }
+ else
#endif
+ {
+ ccgSubSurf_free(smd->mCache);
+ smd->mCache = NULL;
+ }
}
diff --git a/source/blender/modifiers/intern/MOD_subsurf.c b/source/blender/modifiers/intern/MOD_subsurf.c
index dc6e3b4e70a..edf02abfd2a 100644
--- a/source/blender/modifiers/intern/MOD_subsurf.c
+++ b/source/blender/modifiers/intern/MOD_subsurf.c
@@ -104,7 +104,7 @@ static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
#ifdef WITH_OPENSUBDIV
const bool allow_gpu = (flag & MOD_APPLY_ALLOW_GPU) != 0;
- const bool do_cddm_convert = useRenderParams;
+ const bool do_cddm_convert = useRenderParams || (!isFinalCalc && !smd->use_opensubdiv);
#else
const bool do_cddm_convert = useRenderParams || !isFinalCalc;
#endif