diff options
Diffstat (limited to 'source/blender/blenkernel/intern')
-rw-r--r-- | source/blender/blenkernel/intern/multires.c | 5 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/multires_reshape_smooth.c | 2 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/paint.c | 8 |
3 files changed, 10 insertions, 5 deletions
diff --git a/source/blender/blenkernel/intern/multires.c b/source/blender/blenkernel/intern/multires.c index 6ccfabcb5d2..69cd338e15f 100644 --- a/source/blender/blenkernel/intern/multires.c +++ b/source/blender/blenkernel/intern/multires.c @@ -473,7 +473,8 @@ void multires_flush_sculpt_updates(Object *object) } SculptSession *sculpt_session = object->sculpt; - if (BKE_pbvh_type(sculpt_session->pbvh) != PBVH_GRIDS || sculpt_session->multires == NULL) { + if (BKE_pbvh_type(sculpt_session->pbvh) != PBVH_GRIDS || !sculpt_session->multires.active || + sculpt_session->multires.modifier == NULL) { return; } @@ -488,7 +489,7 @@ void multires_flush_sculpt_updates(Object *object) Mesh *mesh = object->data; multiresModifier_reshapeFromCCG( - sculpt_session->multires->totlvl, mesh, sculpt_session->subdiv_ccg); + sculpt_session->multires.modifier->totlvl, mesh, sculpt_session->subdiv_ccg); subdiv_ccg->dirty.coords = false; subdiv_ccg->dirty.hidden = false; diff --git a/source/blender/blenkernel/intern/multires_reshape_smooth.c b/source/blender/blenkernel/intern/multires_reshape_smooth.c index 8b10d729901..fad5004ff4b 100644 --- a/source/blender/blenkernel/intern/multires_reshape_smooth.c +++ b/source/blender/blenkernel/intern/multires_reshape_smooth.c @@ -400,7 +400,7 @@ static char get_effective_edge_crease_char( const MultiresReshapeSmoothContext *reshape_smooth_context, const MEdge *base_edge) { const MultiresReshapeContext *reshape_context = reshape_smooth_context->reshape_context; - if (reshape_context->mmd->simple) { + if (reshape_context->subdiv->settings.is_simple) { return 255; } return base_edge->crease; diff --git a/source/blender/blenkernel/intern/paint.c b/source/blender/blenkernel/intern/paint.c index f52ec5f568f..5224fa3f8f6 100644 --- a/source/blender/blenkernel/intern/paint.c +++ b/source/blender/blenkernel/intern/paint.c @@ -1522,7 +1522,9 @@ static void sculpt_update_object( /* NOTE: Weight pPaint require mesh info for loop lookup, but it never uses multires code path, * so no extra checks is needed here. */ if (mmd) { - ss->multires = mmd; + ss->multires.active = true; + ss->multires.modifier = mmd; + ss->multires.level = mmd->sculptlvl; ss->totvert = me_eval->totvert; ss->totpoly = me_eval->totpoly; ss->totfaces = me->totpoly; @@ -1537,7 +1539,9 @@ static void sculpt_update_object( ss->mvert = me->mvert; ss->mpoly = me->mpoly; ss->mloop = me->mloop; - ss->multires = NULL; + ss->multires.active = false; + ss->multires.modifier = NULL; + ss->multires.level = 0; ss->vmask = CustomData_get_layer(&me->vdata, CD_PAINT_MASK); } |