[Bf-blender-cvs] [2c61b7f3541] blender-v2.83-release: Fix T75071: rendering fails when all render layers disabled, but using compositor

Brecht Van Lommel noreply at git.blender.org
Thu May 14 02:47:53 CEST 2020


Commit: 2c61b7f3541064e57a11a8347efd08ce85a5907e
Author: Brecht Van Lommel
Date:   Thu May 14 02:43:17 2020 +0200
Branches: blender-v2.83-release
https://developer.blender.org/rB2c61b7f3541064e57a11a8347efd08ce85a5907e

Fix T75071: rendering fails when all render layers disabled, but using compositor

===================================================================

M	source/blender/render/intern/source/pipeline.c

===================================================================

diff --git a/source/blender/render/intern/source/pipeline.c b/source/blender/render/intern/source/pipeline.c
index f7901ebb7d0..7114efbe604 100644
--- a/source/blender/render/intern/source/pipeline.c
+++ b/source/blender/render/intern/source/pipeline.c
@@ -1819,42 +1819,42 @@ bool RE_is_rendering_allowed(Scene *scene,
     }
   }
 
-  if (scemode & R_DOCOMP) {
-    if (scene->use_nodes) {
-      if (!scene->nodetree) {
-        BKE_report(reports, RPT_ERROR, "No node tree in scene");
-        return 0;
-      }
+  if (RE_seq_render_active(scene, &scene->r)) {
+    /* Sequencer */
+    if (scene->r.mode & R_BORDER) {
+      BKE_report(reports, RPT_ERROR, "Border rendering is not supported by sequencer");
+      return false;
+    }
+  }
+  else if ((scemode & R_DOCOMP) && scene->use_nodes) {
+    /* Compositor */
+    if (!scene->nodetree) {
+      BKE_report(reports, RPT_ERROR, "No node tree in scene");
+      return 0;
+    }
 
-      if (!check_composite_output(scene)) {
-        BKE_report(reports, RPT_ERROR, "No render output node in scene");
-        return 0;
-      }
+    if (!check_composite_output(scene)) {
+      BKE_report(reports, RPT_ERROR, "No render output node in scene");
+      return 0;
+    }
 
-      if (scemode & R_FULL_SAMPLE) {
-        if (composite_needs_render(scene, 0) == 0) {
-          BKE_report(reports, RPT_ERROR, "Full sample AA not supported without 3D rendering");
-          return 0;
-        }
+    if (scemode & R_FULL_SAMPLE) {
+      if (composite_needs_render(scene, 0) == 0) {
+        BKE_report(reports, RPT_ERROR, "Full sample AA not supported without 3D rendering");
+        return 0;
       }
     }
   }
-
-  /* check valid camera, without camera render is OK (compo, seq) */
-  if (!check_valid_camera(scene, camera_override, reports)) {
-    return 0;
-  }
-
-  if (RE_seq_render_active(scene, &scene->r)) {
-    if (scene->r.mode & R_BORDER) {
-      BKE_report(reports, RPT_ERROR, "Border rendering is not supported by sequencer");
-      return false;
+  else {
+    /* Regular Render */
+    if (!render_scene_has_layers_to_render(scene, single_layer)) {
+      BKE_report(reports, RPT_ERROR, "All render layers are disabled");
+      return 0;
     }
   }
 
-  /* layer flag tests */
-  if (!render_scene_has_layers_to_render(scene, single_layer)) {
-    BKE_report(reports, RPT_ERROR, "All render layers are disabled");
+  /* check valid camera, without camera render is OK (compo, seq) */
+  if (!check_valid_camera(scene, camera_override, reports)) {
     return 0;
   }



More information about the Bf-blender-cvs mailing list