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.
This commit is contained in:
Sergey Sharybin 2014-07-31 22:01:56 +06:00
parent da638d49e3
commit 54472df750
Notes: blender-bot 2023-02-14 10:17:37 +01:00
Referenced by issue #41275, Sequencer: Edit Strip Panel Value for Clip Start Frame does not correspond to the actual start frame on the VSE
Referenced by issue #41236, Rendered viewport doesn't update with material actions
1 changed files with 11 additions and 0 deletions

View File

@ -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)