svn merge ^/trunk/blender -r48691:48729
authorCampbell Barton <ideasman42@gmail.com>
Sun, 8 Jul 2012 15:55:58 +0000 (15:55 +0000)
committerCampbell Barton <ideasman42@gmail.com>
Sun, 8 Jul 2012 15:55:58 +0000 (15:55 +0000)
13 files changed:
1  2 
source/blender/blenkernel/intern/blender.c
source/blender/blenkernel/intern/image.c
source/blender/editors/interface/resources.c
source/blender/editors/space_image/image_buttons.c
source/blender/editors/space_image/image_ops.c
source/blender/imbuf/intern/allocimbuf.c
source/blender/makesdna/DNA_space_types.h
source/blender/render/extern/include/RE_pipeline.h
source/blender/render/intern/source/external_engine.c
source/blender/render/intern/source/pipeline.c
source/blender/render/intern/source/render_result.c
source/blender/windowmanager/intern/wm_init_exit.c
source/creator/creator.c

@@@ -209,27 -205,13 +209,27 @@@ void RE_engine_end_result(RenderEngine 
                return;
  
        /* merge. on break, don't merge in result for preview renders, looks nicer */
 -      if (!(re->test_break(re->tbh) && (re->r.scemode & R_PREVIEWBUTS)))
 -              render_result_merge(re->result, result);
 +      if (!cancel) {
 +              /* for exr tile render, detect tiles that are done */
 +              for (pa = re->parts.first; pa; pa = pa->next) {
 +                      if (result->tilerect.xmin == pa->disprect.xmin &&
 +                         result->tilerect.ymin == pa->disprect.ymin &&
 +                         result->tilerect.xmax == pa->disprect.xmax &&
 +                         result->tilerect.ymax == pa->disprect.ymax) {
 +                              pa->ready = 1;
 +                      }
 +              }
  
 -      /* draw */
 -      if (!re->test_break(re->tbh)) {
 -              result->renlay = result->layers.first; /* weak, draws first layer always */
 -              re->display_draw(re->ddh, result, NULL);
 +              if (re->result->do_exr_tile)
 +                      render_result_exr_file_merge(re->result, result);
 +              else if (!(re->test_break(re->tbh) && (re->r.scemode & R_PREVIEWBUTS)))
 +                      render_result_merge(re->result, result);
 +
 +              /* draw */
 +              if (!re->test_break(re->tbh)) {
-                       result->renlay = result->layers.first; // weak, draws first layer always
++                      result->renlay = result->layers.first; /* weak, draws first layer always */
 +                      re->display_draw(re->ddh, result, NULL);
 +              }
        }
  
        /* free */
Simple merge