diff options
Diffstat (limited to 'source/blender/render')
-rw-r--r-- | source/blender/render/intern/source/pipeline.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/source/blender/render/intern/source/pipeline.c b/source/blender/render/intern/source/pipeline.c index 54f89a65566..5824e917fca 100644 --- a/source/blender/render/intern/source/pipeline.c +++ b/source/blender/render/intern/source/pipeline.c @@ -2366,6 +2366,7 @@ void RE_MergeFullSample(Render *re, Scene *sce, bNodeTree *ntree) static void do_render_composite_fields_blur_3d(Render *re) { bNodeTree *ntree= re->scene->nodetree; + int update_newframe=0; /* INIT seeding, compositor can use random texture */ BLI_srandom(re->r.cfra); @@ -2375,6 +2376,9 @@ static void do_render_composite_fields_blur_3d(Render *re) ntreeFreeCache(ntree); do_render_fields_blur_3d(re); + } else { + /* scene render process already updates animsys */ + update_newframe = 1; } /* swap render result */ @@ -2403,10 +2407,14 @@ static void do_render_composite_fields_blur_3d(Render *re) R.sdh= re->sdh; R.stats_draw= re->stats_draw; + if (update_newframe) + scene_update_for_newframe(re->scene, re->scene->lay); + if(re->r.scemode & R_FULL_SAMPLE) do_merge_fullsample(re, ntree); - else + else { ntreeCompositExecTree(ntree, &re->r, G.background==0); + } ntree->stats_draw= NULL; ntree->test_break= NULL; |