diff options
author | Sergej Reich <sergej.reich@googlemail.com> | 2013-11-23 20:17:12 +0400 |
---|---|---|
committer | Sergej Reich <sergej.reich@googlemail.com> | 2013-11-23 20:17:12 +0400 |
commit | 39dc956f593b3406bf1d81fb83c557b7b51f5327 (patch) | |
tree | 50b59815aad48902a6563aefc8b944daf34c401e /source/blender/render/intern/source/pipeline.c | |
parent | 5d5176095e82b34499e15d74f1fb76d56f4d9508 (diff) | |
parent | d846c9a3b75c3d6f20bc7ab7d2da6cdd18bbbef2 (diff) |
Merge branch 'master' into soc-2013-rigid_body_simsoc-2013-rigid_body_sim
Conflicts:
intern/rigidbody/CMakeLists.txt
release/datafiles/splash.png
source/blender/editors/space_view3d/drawobject.c
source/blender/makesdna/DNA_view3d_types.h
Diffstat (limited to 'source/blender/render/intern/source/pipeline.c')
-rw-r--r-- | source/blender/render/intern/source/pipeline.c | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/source/blender/render/intern/source/pipeline.c b/source/blender/render/intern/source/pipeline.c index fa05f8dd18d..d11f4615698 100644 --- a/source/blender/render/intern/source/pipeline.c +++ b/source/blender/render/intern/source/pipeline.c @@ -1600,6 +1600,7 @@ static void tag_scenes_for_render(Render *re) /* check for render-layers nodes using other scenes, we tag them LIB_DOIT */ for (node = re->scene->nodetree->nodes.first; node; node = node->next) { + node->flag &= ~NODE_TEST; if (node->type == CMP_NODE_R_LAYERS) { if (node->id) { if (!MAIN_VERSION_ATLEAST(re->main, 265, 5)) { @@ -1617,8 +1618,12 @@ static void tag_scenes_for_render(Render *re) } } - if (node->id != (ID *)re->scene) - node->id->flag |= LIB_DOIT; + if (node->id != (ID *)re->scene) { + if ((node->id->flag & LIB_DOIT) == 0) { + node->flag |= NODE_TEST; + node->id->flag |= LIB_DOIT; + } + } } } } @@ -1640,12 +1645,12 @@ static void ntree_render_scenes(Render *re) for (node = re->scene->nodetree->nodes.first; node; node = node->next) { if (node->type == CMP_NODE_R_LAYERS) { if (node->id && node->id != (ID *)re->scene) { - if (node->id->flag & LIB_DOIT) { + if (node->flag & NODE_TEST) { Scene *scene = (Scene *)node->id; render_scene(re, scene, cfra); restore_scene = (scene != re->scene); - node->id->flag &= ~LIB_DOIT; + node->flag &= ~NODE_TEST; nodeUpdate(re->scene->nodetree, node); } @@ -1679,7 +1684,7 @@ static void add_freestyle(Render *re, int render) * real bmain uses. This is needed because freestyle's * bmain could be used to tag scenes for update, which * implies call of ED_render_scene_update in some cases - * and that function requires proper windoew manager + * and that function requires proper window manager * to present (sergey) */ re->freestyle_bmain.wm = re->main->wm; @@ -2288,13 +2293,6 @@ int RE_is_rendering_allowed(Scene *scene, Object *camera_override, ReportList *r BKE_report(reports, RPT_ERROR, "Cannot save render buffers, check the temp default path"); return 0; } - - /* no fullsample and edge */ - if ((scemode & R_FULL_SAMPLE) && (scene->r.mode & R_EDGE)) { - BKE_report(reports, RPT_ERROR, "Full sample does not support edge enhance"); - return 0; - } - } if (scemode & R_DOCOMP) { |