Bugs #4488 and #4431
authorTon Roosendaal <ton@blender.org>
Mon, 26 Jun 2006 14:57:56 +0000 (14:57 +0000)
committerTon Roosendaal <ton@blender.org>
Mon, 26 Jun 2006 14:57:56 +0000 (14:57 +0000)
Sequencer:
Removing feature that allowed live updates of render progress while using
scene strips. In 2.41 and older this also happens invisible, and ESC from
it works now anyway.

Two reasons:
- it is quite annoying, especially on quit renders
- new 'render to window' conflicts too much with the sequencer window
  option that shows previews (in code as well as functional!)

source/blender/include/BIF_renderwin.h
source/blender/render/intern/source/pipeline.c
source/blender/src/renderwin.c
source/blender/src/sequence.c

index d5b934d9050fbb3a194d5d9e0447e2d0857b8432..a997efb336d474d9842ffca41e97daf1e0a6623d 100644 (file)
@@ -52,7 +52,7 @@ void BIF_redraw_render_rect(void);
 void BIF_swap_render_rects(void);
 void BIF_toggle_render_display(void);
 
-void BIF_init_render_callbacks(struct Render *re);
+void BIF_init_render_callbacks(struct Render *re, int do_display);
 void BIF_end_render_callbacks(void);
 
 /* should not be here, ~WIP~ */
index 1a4d025acb0b2800cd01ec5d4c92dddce54cd3bb..6b02a41cc8d310279a6638d6529664ab74d562bf 100644 (file)
@@ -1096,8 +1096,9 @@ static void threaded_tile_processor(Render *re)
        
        if(rr==NULL)
                return;
-       if(re->test_break())
-               return;
+       /* warning; no return here without closing exr file */
+//     if(re->re->test_break())
+//             return;
        
        initparts(re);
        
index 6790bca70a654d078e621ecb5dd9e1f2ed410de6..7e78501ed4e77dea7e4845f04e0f4cee8ecaa413 100644 (file)
@@ -1064,7 +1064,7 @@ static void do_render(int anim)
        G.rendering= 1;
 
        /* set render callbacks, also starts ESC timer */
-       BIF_init_render_callbacks(re);
+       BIF_init_render_callbacks(re, 1);
        
        waitcursor(1);
        if(render_win) 
@@ -1146,19 +1146,20 @@ static int esc_timer_set= 0;
 /* set callbacks, exported to sequence render too. 
    Only call in foreground (UI) renders. */
 
-void BIF_init_render_callbacks(Render *re)
+void BIF_init_render_callbacks(Render *re, int do_display)
 {
-       
-       if(G.displaymode!=R_DISPLAYWIN) {
-               if(render_win)
-                       BIF_close_render_display();
-               imagewindow_render_callbacks(re);
-       }
-       else {
-               RE_display_init_cb(re, renderwin_init_display_cb);
-               RE_display_draw_cb(re, renderwin_progress_display_cb);
-               RE_display_clear_cb(re, renderwin_clear_display_cb);
-               RE_stats_draw_cb(re, renderwin_renderinfo_cb);
+       if(do_display) {
+               if(G.displaymode!=R_DISPLAYWIN) {
+                       if(render_win)
+                               BIF_close_render_display();
+                       imagewindow_render_callbacks(re);
+               }
+               else {
+                       RE_display_init_cb(re, renderwin_init_display_cb);
+                       RE_display_draw_cb(re, renderwin_progress_display_cb);
+                       RE_display_clear_cb(re, renderwin_clear_display_cb);
+                       RE_stats_draw_cb(re, renderwin_renderinfo_cb);
+               }
        }
        
        RE_error_cb(re, error_cb);
index a11c018dc0e452f296139d4c431736550f943365..97d921102967e6d716b823f9460ea11f3c79c471 100644 (file)
@@ -909,7 +909,7 @@ static void do_build_seq_ibuf(Sequence * seq, int cfra)
                                doseq= sce->r.scemode & R_DOSEQ;
                                sce->r.scemode &= ~R_DOSEQ;
                                
-                               BIF_init_render_callbacks(re);
+                               BIF_init_render_callbacks(re, 0);       /* 0= no display callbacks */
                                
                                /* hrms, set_scene still needed? work on that... */
                                if(sce!=oldsce) set_scene_bg(sce);