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:
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
|
@ -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)
|
||||
|
|
Loading…
Reference in New Issue