From 9aefe0871115bba491638fa53ab11226d5b24a64 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Tue, 27 Jan 2015 22:40:55 +0500 Subject: [PATCH] Fix T43398: Viewport "Renderend" ist not updated when a material is assigned to a face The issues goes back to eb016eb and now it becomes clear object could be tagged for update from the edit mode as well. --- source/blender/blenkernel/intern/scene.c | 4 ++-- source/blender/makesdna/DNA_ID.h | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/source/blender/blenkernel/intern/scene.c b/source/blender/blenkernel/intern/scene.c index 8f479d4adf9..f94f7cd8f0b 100644 --- a/source/blender/blenkernel/intern/scene.c +++ b/source/blender/blenkernel/intern/scene.c @@ -1642,9 +1642,9 @@ static void prepare_mesh_for_viewport_render(Main *bmain, Scene *scene) Object *obedit = scene->obedit; if (obedit) { Mesh *mesh = obedit->data; - /* TODO(sergey): Check object recalc flags as well? */ if ((obedit->type == OB_MESH) && - (mesh->id.flag & (LIB_ID_RECALC | LIB_ID_RECALC_DATA))) + ((obedit->id.flag & LIB_ID_RECALC_ALL) || + (mesh->id.flag & LIB_ID_RECALC_ALL))) { if (check_rendered_viewport_visible(bmain)) { BMesh *bm = mesh->edit_btmesh->bm; diff --git a/source/blender/makesdna/DNA_ID.h b/source/blender/makesdna/DNA_ID.h index c00435faa9d..b51b53cc801 100644 --- a/source/blender/makesdna/DNA_ID.h +++ b/source/blender/makesdna/DNA_ID.h @@ -270,6 +270,8 @@ enum { LIB_ID_RECALC = 1 << 12, LIB_ID_RECALC_DATA = 1 << 13, LIB_ANIM_NO_RECALC = 1 << 14, + + LIB_ID_RECALC_ALL = (LIB_ID_RECALC|LIB_ID_RECALC_DATA), }; #ifdef __cplusplus