diff options
author | Jeroen Bakker <jeroen@blender.org> | 2021-06-02 11:05:39 +0300 |
---|---|---|
committer | Jeroen Bakker <jeroen@blender.org> | 2021-06-02 11:05:39 +0300 |
commit | 46447594de3714ef10725e921008e583008cc97e (patch) | |
tree | 768cf83e7ee5fc8566b005c2d7c5b52d86816d23 /source/blender/compositor/nodes | |
parent | 507c19c0f7a1dc7a46ec8ac19d9e904c9e825a9b (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/nodes')
-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); |