forked from bartvdbraak/blender
Fix #36082: animation playback not working after rendering of background scenes and
multiple render layer nodes. Also fixes issue with database free with vector blur after recent thread safety changes.
This commit is contained in:
parent
930dde34a3
commit
990cad983b
@ -684,12 +684,9 @@ void BKE_scene_set_background(Main *bmain, Scene *scene)
|
||||
}
|
||||
}
|
||||
|
||||
/* sort baselist */
|
||||
DAG_scene_relations_rebuild(bmain, scene);
|
||||
|
||||
/* ensure dags are built for sets */
|
||||
/* sort baselist for scene and sets */
|
||||
for (sce = scene; sce; sce = sce->set)
|
||||
DAG_scene_relations_update(bmain, sce);
|
||||
DAG_scene_relations_rebuild(bmain, sce);
|
||||
|
||||
/* copy layers and flags from bases to objects */
|
||||
for (base = scene->base.first; base; base = base->next) {
|
||||
|
@ -5403,12 +5403,10 @@ void RE_Database_Preprocess(Render *re)
|
||||
volume_precache(re);
|
||||
}
|
||||
|
||||
if (re->test_break(re->tbh)) {
|
||||
re->i.convertdone = TRUE;
|
||||
re->i.convertdone = TRUE;
|
||||
|
||||
if (re->test_break(re->tbh))
|
||||
RE_Database_Free(re);
|
||||
}
|
||||
else
|
||||
re->i.convertdone = TRUE;
|
||||
|
||||
re->i.infostr = NULL;
|
||||
re->stats_draw(re->sdh, &re->i);
|
||||
@ -5858,6 +5856,7 @@ void RE_Database_FromScene_Vectors(Render *re, Main *bmain, Scene *sce, unsigned
|
||||
/* free dbase and make the future one */
|
||||
strandsurface= re->strandsurface;
|
||||
memset(&re->strandsurface, 0, sizeof(ListBase));
|
||||
re->i.convertdone = TRUE;
|
||||
RE_Database_Free(re);
|
||||
re->strandsurface= strandsurface;
|
||||
|
||||
@ -5873,6 +5872,7 @@ void RE_Database_FromScene_Vectors(Render *re, Main *bmain, Scene *sce, unsigned
|
||||
/* free dbase and make the real one */
|
||||
strandsurface= re->strandsurface;
|
||||
memset(&re->strandsurface, 0, sizeof(ListBase));
|
||||
re->i.convertdone = TRUE;
|
||||
RE_Database_Free(re);
|
||||
re->strandsurface= strandsurface;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user