diff options
author | Jeroen Bakker <jeroen@blender.org> | 2021-06-02 11:05:39 +0300 |
---|---|---|
committer | Jeroen Bakker <jeroen@blender.org> | 2021-06-09 09:45:45 +0300 |
commit | 0b577e977b43b9169dc5002b4e27b54c71d518b4 (patch) | |
tree | 3e5a1b86f4c3c28f608305d0b1d5a413de975d0a /source/blender/compositor | |
parent | 5a612097abb4438ab357ae29e5d6f1916d136d69 (diff) |
Fix T88567: Cryptomatte only works for the first View Layer.
The view layer was always set to 0. This patch increments it.
Diffstat (limited to 'source/blender/compositor')
-rw-r--r-- | source/blender/compositor/nodes/COM_CryptomatteNode.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/compositor/nodes/COM_CryptomatteNode.cc b/source/blender/compositor/nodes/COM_CryptomatteNode.cc index 3beb3aa2917..4032a655633 100644 --- a/source/blender/compositor/nodes/COM_CryptomatteNode.cc +++ b/source/blender/compositor/nodes/COM_CryptomatteNode.cc @@ -118,9 +118,9 @@ void CryptomatteNode::input_operations_from_render_source( return; } - const short cryptomatte_layer_id = 0; + short view_layer_id = 0; const std::string prefix = prefix_from_node(context, node); - LISTBASE_FOREACH (ViewLayer *, view_layer, &scene->view_layers) { + LISTBASE_FOREACH_INDEX (ViewLayer *, view_layer, &scene->view_layers, view_layer_id) { RenderLayer *render_layer = RE_GetRenderLayer(render_result, view_layer->name); if (render_layer) { LISTBASE_FOREACH (RenderPass *, render_pass, &render_layer->passes) { @@ -129,7 +129,7 @@ void CryptomatteNode::input_operations_from_render_source( RenderLayersProg *op = new RenderLayersProg( render_pass->name, DataType::Color, render_pass->channels); op->setScene(scene); - op->setLayerId(cryptomatte_layer_id); + op->setLayerId(view_layer_id); op->setRenderData(context.getRenderData()); op->setViewName(context.getViewName()); r_input_operations.append(op); |