Revision: 27745
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=27745
Author:   blendix
Date:     2010-03-25 15:32:29 +0100 (Thu, 25 Mar 2010)

Log Message:
-----------
Render Branch: fix rendering another scene from the compositor not working.

Modified Paths:
--------------
    branches/render25/source/blender/makesdna/DNA_scene_types.h
    branches/render25/source/blender/render/intern/source/pipeline.c

Modified: branches/render25/source/blender/makesdna/DNA_scene_types.h
===================================================================
--- branches/render25/source/blender/makesdna/DNA_scene_types.h 2010-03-25 
13:53:24 UTC (rev 27744)
+++ branches/render25/source/blender/makesdna/DNA_scene_types.h 2010-03-25 
14:32:29 UTC (rev 27745)
@@ -906,7 +906,7 @@
 #define R_NO_TEX                       0x2000
 #define R_STAMP_INFO           0x4000  /* deprecated */
 #define R_FULL_SAMPLE          0x8000
-#define R_COMP_RERENDER                0x10000
+#define R_DEPRECATED           0x10000
 #define R_RECURS_PROTECTION    0x20000
 #define R_TEXNODE_PREVIEW      0x40000
 

Modified: branches/render25/source/blender/render/intern/source/pipeline.c
===================================================================
--- branches/render25/source/blender/render/intern/source/pipeline.c    
2010-03-25 13:53:24 UTC (rev 27744)
+++ branches/render25/source/blender/render/intern/source/pipeline.c    
2010-03-25 14:32:29 UTC (rev 27745)
@@ -358,7 +358,7 @@
                int index = BLI_findindex(&re->params.r.layers, srl);
                if (index != -1) {
                        re->params.r.actlay = index;
-                       re->params.r.scemode |= 
(R_SINGLE_LAYER|R_COMP_RERENDER);
+                       re->params.r.scemode |= R_SINGLE_LAYER;
                }
        }
                
@@ -1080,6 +1080,7 @@
        
        /* still unsure entity this... */
        resc->db.scene= sce;
+       resc->db.lay= sce->lay;
        
        /* ensure scene has depsgraph, base flags etc OK */
        set_scene_bg(sce);
@@ -1235,34 +1236,32 @@
                        ntreeCompositTagAnimated(ntree);
                }
                
-               if(1 || !(re->params.r.scemode & R_COMP_RERENDER)) {
-                       if(ntree && re->params.r.scemode & R_DOCOMP) {
-                               /* checks if there are render-result nodes that 
need scene */
-                               if((re->params.r.scemode & R_SINGLE_LAYER)==0)
-                                       ntree_render_scenes(re);
+               if(ntree && re->params.r.scemode & R_DOCOMP) {
+                       /* checks if there are render-result nodes that need 
scene */
+                       if((re->params.r.scemode & R_SINGLE_LAYER)==0)
+                               ntree_render_scenes(re);
+                       
+                       if(!re->cb.test_break(re->cb.tbh)) {
+                               ntree->stats_draw= render_composit_stats;
+                               ntree->sdh= re;
+                               ntree->test_break= re->cb.test_break;
+                               ntree->tbh= re->cb.tbh;
                                
-                               if(!re->cb.test_break(re->cb.tbh)) {
-                                       ntree->stats_draw= 
render_composit_stats;
-                                       ntree->sdh= re;
-                                       ntree->test_break= re->cb.test_break;
-                                       ntree->tbh= re->cb.tbh;
-                                       
-                                       if(update_newframe)
-                                               
scene_update_for_newframe(re->db.scene, re->db.lay);
-                                       
-                                       if(re->params.r.scemode & 
R_FULL_SAMPLE) 
-                                               do_merge_fullsample(re, ntree, 
&RenderGlobal.renderlist);
-                                       else
-                                               ntreeCompositExecTree(ntree, 
&re->params.r, G.background==0);
-                                       
-                                       ntree->stats_draw= NULL;
-                                       ntree->test_break= NULL;
-                                       ntree->tbh= ntree->sdh= NULL;
-                               }
+                               if(update_newframe)
+                                       scene_update_for_newframe(re->db.scene, 
re->db.lay);
+                               
+                               if(re->params.r.scemode & R_FULL_SAMPLE) 
+                                       do_merge_fullsample(re, ntree, 
&RenderGlobal.renderlist);
+                               else
+                                       ntreeCompositExecTree(ntree, 
&re->params.r, G.background==0);
+                               
+                               ntree->stats_draw= NULL;
+                               ntree->test_break= NULL;
+                               ntree->tbh= ntree->sdh= NULL;
                        }
-                       else if(re->params.r.scemode & R_FULL_SAMPLE)
-                               do_merge_fullsample(re, NULL, 
&RenderGlobal.renderlist);
                }
+               else if(re->params.r.scemode & R_FULL_SAMPLE)
+                       do_merge_fullsample(re, NULL, &RenderGlobal.renderlist);
        }
 
        /* weak... the display callback wants an active renderlayer pointer... 
*/


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

Reply via email to