From 50c129760d0a32802a8b83a1d977a80c42210c00 Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Thu, 2 Nov 2017 15:05:57 +0100 Subject: Fix Cycles showing empty tiles while they are being denoised. --- intern/cycles/blender/blender_session.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'intern') diff --git a/intern/cycles/blender/blender_session.cpp b/intern/cycles/blender/blender_session.cpp index 73383ad5080..d9301125641 100644 --- a/intern/cycles/blender/blender_session.cpp +++ b/intern/cycles/blender/blender_session.cpp @@ -330,20 +330,20 @@ void BlenderSession::do_write_update_render_tile(RenderTile& rtile, bool do_upda BL::RenderLayer b_rlay = *b_single_rlay; if(do_update_only) { - /* update only needed */ + /* Sample would be zero at initial tile update, which is only needed + * to tag tile form blender side as IN PROGRESS for proper highlight + * no buffers should be sent to blender yet. For denoise we also + * keep showing the noisy buffers until denoise is done. */ + bool merge = (rtile.sample != 0) && (rtile.task != RenderTile::DENOISE); - if(rtile.sample != 0) { - /* sample would be zero at initial tile update, which is only needed - * to tag tile form blender side as IN PROGRESS for proper highlight - * no buffers should be sent to blender yet - */ + if(merge) { update_render_result(b_rr, b_rlay, rtile); } - end_render_result(b_engine, b_rr, true, highlight, false); + end_render_result(b_engine, b_rr, true, highlight, merge); } else { - /* write result */ + /* Write final render result. */ write_render_result(b_rr, b_rlay, rtile); end_render_result(b_engine, b_rr, false, false, true); } -- cgit v1.2.3