Revision: 52430
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52430
Author:   nazgul
Date:     2012-11-21 09:36:36 +0000 (Wed, 21 Nov 2012)
Log Message:
-----------
Fix #33253: VSE preview doesn't display compositor

There were two issues in scene strip rendering:

- It will skip rendering if scene doesn't have camera but uses compositor
- G.is_break will cancel preview rendering

Also removed Use Sequencer from scene's strip settings, it's not supported.

Modified Paths:
--------------
    trunk/blender/release/scripts/startup/bl_ui/space_sequencer.py
    trunk/blender/source/blender/blenkernel/intern/sequencer.c
    trunk/blender/source/blender/editors/space_sequencer/sequencer_draw.c
    trunk/blender/source/blender/makesrna/intern/rna_scene.c

Modified: trunk/blender/release/scripts/startup/bl_ui/space_sequencer.py
===================================================================
--- trunk/blender/release/scripts/startup/bl_ui/space_sequencer.py      
2012-11-21 09:32:40 UTC (rev 52429)
+++ trunk/blender/release/scripts/startup/bl_ui/space_sequencer.py      
2012-11-21 09:36:36 UTC (rev 52430)
@@ -707,8 +707,6 @@
         layout.template_ID(strip, "scene")
 
         scene = strip.scene
-        if scene:
-            layout.prop(scene.render, "use_sequencer")
 
         layout.label(text="Camera Override")
         layout.template_ID(strip, "scene_camera")

Modified: trunk/blender/source/blender/blenkernel/intern/sequencer.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/sequencer.c  2012-11-21 
09:32:40 UTC (rev 52429)
+++ trunk/blender/source/blender/blenkernel/intern/sequencer.c  2012-11-21 
09:36:36 UTC (rev 52430)
@@ -2343,6 +2343,7 @@
                    (context.scene->r.seq_flag & R_SEQ_GL_PREV);
        int do_seq;
        int have_seq = FALSE;
+       int have_comp = FALSE;
        Scene *scene;
        int is_thread_main = BLI_thread_is_main();
 
@@ -2355,6 +2356,7 @@
        frame = scene->r.sfra + nr + seq->anim_startofs;
 
        have_seq = (scene->r.scemode & R_DOSEQ) && scene->ed && 
scene->ed->seqbase.first;
+       have_comp = (scene->r.scemode & R_DOCOMP) && scene->use_nodes && 
scene->nodetree;
 
        oldcfra = scene->r.cfra;
        scene->r.cfra = frame;
@@ -2367,7 +2369,7 @@
                camera = scene->camera;
        }
 
-       if (have_seq == FALSE && camera == NULL) {
+       if (have_comp == FALSE && camera == NULL) {
                scene->r.cfra = oldcfra;
                return NULL;
        }

Modified: trunk/blender/source/blender/editors/space_sequencer/sequencer_draw.c
===================================================================
--- trunk/blender/source/blender/editors/space_sequencer/sequencer_draw.c       
2012-11-21 09:32:40 UTC (rev 52429)
+++ trunk/blender/source/blender/editors/space_sequencer/sequencer_draw.c       
2012-11-21 09:36:36 UTC (rev 52430)
@@ -822,6 +822,7 @@
        int rectx, recty;
        float render_size = 0.0;
        float proxy_size = 100.0;
+       short is_break = G.is_break;
 
        render_size = sseq->render_size;
        if (render_size == 0) {
@@ -840,6 +841,11 @@
 
        context = BKE_sequencer_new_render_data(bmain, scene, rectx, recty, 
proxy_size);
 
+       /* sequencer could start rendering, in this case we need to be sure it 
wouldn't be canceled
+        * by Esc pressed somewhere in the past
+        */
+       G.is_break = FALSE;
+
        if (special_seq_update)
                ibuf = BKE_sequencer_give_ibuf_direct(context, cfra + 
frame_ofs, special_seq_update);
        else if (!U.prefetchframes) // XXX || (G.f & G_PLAYANIM) == 0) {
@@ -847,6 +853,9 @@
        else
                ibuf = BKE_sequencer_give_ibuf_threaded(context, cfra + 
frame_ofs, sseq->chanshown);
 
+       /* restore state so real rendering would be canceled (if needed) */
+       G.is_break = is_break;
+
        return ibuf;
 }
 

Modified: trunk/blender/source/blender/makesrna/intern/rna_scene.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_scene.c    2012-11-21 
09:32:40 UTC (rev 52429)
+++ trunk/blender/source/blender/makesrna/intern/rna_scene.c    2012-11-21 
09:36:36 UTC (rev 52430)
@@ -3961,6 +3961,7 @@
        prop = RNA_def_property(srna, "use_sequencer_gl_preview", PROP_BOOLEAN, 
PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "seq_flag", R_SEQ_GL_PREV);
        RNA_def_property_ui_text(prop, "Sequencer OpenGL", "");
+       RNA_def_property_update(prop, NC_SCENE | ND_SEQUENCER, 
"rna_SceneSequencer_update");
 
 #if 0  /* see R_SEQ_GL_REND comment */
        prop = RNA_def_property(srna, "use_sequencer_gl_render", PROP_BOOLEAN, 
PROP_NONE);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to