[Bf-blender-cvs] [8f12457c256] master: Fix T90295: inconsistent render pass order between Cycles and Eevee

Brecht Van Lommel noreply at git.blender.org
Thu Jul 29 18:13:22 CEST 2021


Commit: 8f12457c256acebb17942260c2807789357daef7
Author: Brecht Van Lommel
Date:   Thu Jul 29 16:39:19 2021 +0200
Branches: master
https://developer.blender.org/rB8f12457c256acebb17942260c2807789357daef7

Fix T90295: inconsistent render pass order between Cycles and Eevee

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

M	intern/cycles/blender/addon/engine.py
M	source/blender/draw/engines/eevee/eevee_render.c

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

diff --git a/intern/cycles/blender/addon/engine.py b/intern/cycles/blender/addon/engine.py
index 29f8cd8f8cd..489a883f098 100644
--- a/intern/cycles/blender/addon/engine.py
+++ b/intern/cycles/blender/addon/engine.py
@@ -235,9 +235,12 @@ def system_info():
 
 
 def list_render_passes(scene, srl):
-    # Builtin Blender passes.
+    crl = srl.cycles
+
+    # Combined pass.
     yield ("Combined", "RGBA", 'COLOR')
 
+    # Data passes.
     if srl.use_pass_z:                     yield ("Depth",         "Z",    'VALUE')
     if srl.use_pass_mist:                  yield ("Mist",          "Z",    'VALUE')
     if srl.use_pass_normal:                yield ("Normal",        "XYZ",  'VECTOR')
@@ -245,8 +248,8 @@ def list_render_passes(scene, srl):
     if srl.use_pass_uv:                    yield ("UV",            "UVA",  'VECTOR')
     if srl.use_pass_object_index:          yield ("IndexOB",       "X",    'VALUE')
     if srl.use_pass_material_index:        yield ("IndexMA",       "X",    'VALUE')
-    if srl.use_pass_shadow:                yield ("Shadow",        "RGB",  'COLOR')
-    if srl.use_pass_ambient_occlusion:     yield ("AO",            "RGB",  'COLOR')
+
+    # Light passes.
     if srl.use_pass_diffuse_direct:        yield ("DiffDir",       "RGB",  'COLOR')
     if srl.use_pass_diffuse_indirect:      yield ("DiffInd",       "RGB",  'COLOR')
     if srl.use_pass_diffuse_color:         yield ("DiffCol",       "RGB",  'COLOR')
@@ -256,15 +259,16 @@ def list_render_passes(scene, srl):
     if srl.use_pass_transmission_direct:   yield ("TransDir",      "RGB",  'COLOR')
     if srl.use_pass_transmission_indirect: yield ("TransInd",      "RGB",  'COLOR')
     if srl.use_pass_transmission_color:    yield ("TransCol",      "RGB",  'COLOR')
+    if crl.use_pass_volume_direct:         yield ("VolumeDir",     "RGB",  'COLOR')
+    if crl.use_pass_volume_indirect:       yield ("VolumeInd",     "RGB",  'COLOR')
     if srl.use_pass_emit:                  yield ("Emit",          "RGB",  'COLOR')
     if srl.use_pass_environment:           yield ("Env",           "RGB",  'COLOR')
+    if srl.use_pass_shadow:                yield ("Shadow",        "RGB",  'COLOR')
+    if srl.use_pass_ambient_occlusion:     yield ("AO",            "RGB",  'COLOR')
 
-    # Cycles specific passes.
-    crl = srl.cycles
+    # Debug passes.
     if crl.pass_debug_render_time:             yield ("Debug Render Time",             "X",   'VALUE')
     if crl.pass_debug_sample_count:            yield ("Debug Sample Count",            "X",   'VALUE')
-    if crl.use_pass_volume_direct:             yield ("VolumeDir",                     "RGB", 'COLOR')
-    if crl.use_pass_volume_indirect:           yield ("VolumeInd",                     "RGB", 'COLOR')
 
     # Cryptomatte passes.
     crypto_depth = (srl.pass_cryptomatte_depth + 1) // 2
diff --git a/source/blender/draw/engines/eevee/eevee_render.c b/source/blender/draw/engines/eevee/eevee_render.c
index d214409c458..1484a480f80 100644
--- a/source/blender/draw/engines/eevee/eevee_render.c
+++ b/source/blender/draw/engines/eevee/eevee_render.c
@@ -712,15 +712,15 @@ void EEVEE_render_update_passes(RenderEngine *engine, Scene *scene, ViewLayer *v
   CHECK_PASS_LEGACY(Z, SOCK_FLOAT, 1, "Z");
   CHECK_PASS_LEGACY(MIST, SOCK_FLOAT, 1, "Z");
   CHECK_PASS_LEGACY(NORMAL, SOCK_VECTOR, 3, "XYZ");
-  CHECK_PASS_LEGACY(SHADOW, SOCK_RGBA, 3, "RGB");
-  CHECK_PASS_LEGACY(AO, SOCK_RGBA, 3, "RGB");
-  CHECK_PASS_LEGACY(DIFFUSE_COLOR, SOCK_RGBA, 3, "RGB");
   CHECK_PASS_LEGACY(DIFFUSE_DIRECT, SOCK_RGBA, 3, "RGB");
-  CHECK_PASS_LEGACY(GLOSSY_COLOR, SOCK_RGBA, 3, "RGB");
+  CHECK_PASS_LEGACY(DIFFUSE_COLOR, SOCK_RGBA, 3, "RGB");
   CHECK_PASS_LEGACY(GLOSSY_DIRECT, SOCK_RGBA, 3, "RGB");
+  CHECK_PASS_LEGACY(GLOSSY_COLOR, SOCK_RGBA, 3, "RGB");
+  CHECK_PASS_EEVEE(VOLUME_LIGHT, SOCK_RGBA, 3, "RGB");
   CHECK_PASS_LEGACY(EMIT, SOCK_RGBA, 3, "RGB");
   CHECK_PASS_LEGACY(ENVIRONMENT, SOCK_RGBA, 3, "RGB");
-  CHECK_PASS_EEVEE(VOLUME_LIGHT, SOCK_RGBA, 3, "RGB");
+  CHECK_PASS_LEGACY(SHADOW, SOCK_RGBA, 3, "RGB");
+  CHECK_PASS_LEGACY(AO, SOCK_RGBA, 3, "RGB");
   CHECK_PASS_EEVEE(BLOOM, SOCK_RGBA, 3, "RGB");
 
   LISTBASE_FOREACH (ViewLayerAOV *, aov, &view_layer->aovs) {



More information about the Bf-blender-cvs mailing list