[Bf-blender-cvs] [54472df] master: Fix T41236: Rendered viewport doesn't update with material actions

Sergey Sharybin noreply at git.blender.org
Thu Jul 31 18:06:11 CEST 2014


Commit: 54472df7507a0f5da027c8f8c41907e0b603385c
Author: Sergey Sharybin
Date:   Thu Jul 31 22:01:56 2014 +0600
Branches: master
https://developer.blender.org/rB54472df7507a0f5da027c8f8c41907e0b603385c

Fix T41236: Rendered viewport doesn't update with material actions

The issue was caused by NLA evaluation without actions not setting
id's flag as updated (as that's happening when action writes data
to the ID datablock).

Added the same flag set for the NLA evaluation as what's happening
for actions.

===================================================================

M	source/blender/blenkernel/intern/anim_sys.c

===================================================================

diff --git a/source/blender/blenkernel/intern/anim_sys.c b/source/blender/blenkernel/intern/anim_sys.c
index c7e2bb8..6e0033d 100644
--- a/source/blender/blenkernel/intern/anim_sys.c
+++ b/source/blender/blenkernel/intern/anim_sys.c
@@ -2338,6 +2338,17 @@ static void animsys_evaluate_nla(ListBase *echannels, PointerRNA *ptr, AnimData
 		
 	/* 3. free temporary evaluation data that's not used elsewhere */
 	BLI_freelistN(&estrips);
+
+	/* Tag ID as updated so render engines will recognize changes in data
+	 * which is nimated but doesn't have actions.
+	 */
+	if (ptr->id.data != NULL) {
+		ID *id = ptr->id.data;
+		if (!(id->flag & LIB_ANIM_NO_RECALC)) {
+			id->flag |= LIB_ID_RECALC;
+			DAG_id_type_tag(G.main, GS(id->name));
+		}
+	}
 }
 
 /* NLA Evaluation function (mostly for use through do_animdata)




More information about the Bf-blender-cvs mailing list