diff options
Diffstat (limited to 'source/blender/blenkernel/intern/multires.c')
-rw-r--r-- | source/blender/blenkernel/intern/multires.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/multires.c b/source/blender/blenkernel/intern/multires.c index 6a5e31bd2a2..a539aa45cf6 100644 --- a/source/blender/blenkernel/intern/multires.c +++ b/source/blender/blenkernel/intern/multires.c @@ -347,7 +347,7 @@ int multires_get_level(const Scene *scene, mmd->renderlvl; } else if (ob->mode == OB_MODE_SCULPT) { - return mmd->sculptlvl; + return BKE_multires_sculpt_level_get(mmd); } else if (ignore_simplify) { return mmd->lvl; @@ -2557,3 +2557,12 @@ int mdisp_rot_face_to_crn(struct MVert *UNUSED(mvert), return S; } + +/* This is a workaround for T58473. + * Force sculpting on the highest level for until the root of the issue is solved. + * + * When that issue is solved simple replace call of this function with mmd->sculptlvl. */ +int BKE_multires_sculpt_level_get(const struct MultiresModifierData *mmd) +{ + return mmd->totlvl; +} |