[Bf-blender-cvs] [6cbdde1ba1a] blender2.8: Fix T53400: DEG tagging is freeing Irradiance Grid when selecting objects
Sergey Sharybin
noreply at git.blender.org
Tue Dec 19 11:49:32 CET 2017
Commit: 6cbdde1ba1a4476d7f6dbec955adb4836f56e33d
Author: Sergey Sharybin
Date: Tue Dec 19 11:46:53 2017 +0100
Branches: blender2.8
https://developer.blender.org/rB6cbdde1ba1a4476d7f6dbec955adb4836f56e33d
Fix T53400: DEG tagging is freeing Irradiance Grid when selecting objects
Ignore selection related recalc in Eevee ID update callback.
===================================================================
M source/blender/draw/engines/eevee/eevee_engine.c
===================================================================
diff --git a/source/blender/draw/engines/eevee/eevee_engine.c b/source/blender/draw/engines/eevee/eevee_engine.c
index f24381e1fb4..1466ed6adb7 100644
--- a/source/blender/draw/engines/eevee/eevee_engine.c
+++ b/source/blender/draw/engines/eevee/eevee_engine.c
@@ -283,6 +283,13 @@ static void eevee_view_update(void *vedata)
static void eevee_id_update(void *UNUSED(vedata), ID *id)
{
+ /* This is a bit mask of components which update is to be ignored. */
+ const int ignore_updates = ID_RECALC_COLLECTIONS;
+ /* Check whether we have to do anything here. */
+ if ((id->recalc & ~ignore_updates) == 0) {
+ return;
+ }
+ /* Handle updates based on ID type. */
const ID_Type id_type = GS(id->name);
if (id_type == ID_OB) {
Object *object = (Object *)id;
More information about the Bf-blender-cvs
mailing list