Commit: e4278b72bb1a658d2187040bd5c71c598b6c16d4 Author: Pierre Risch Date: Mon Mar 21 10:53:13 2022 +0100 Branches: master https://developer.blender.org/rBe4278b72bb1a658d2187040bd5c71c598b6c16d4
T84815: Missing preview image in compositing file output node Hello, I saw that this revision was stalled for a few months so I tried to update it. https://developer.blender.org/D10995 I added a function that adds a preview on the first connected input of the file output node. I removed the preview on the single layer format Thanks Reviewed By: #compositing, jbakker Maniphest Tasks: T84815 Differential Revision: https://developer.blender.org/D14219 =================================================================== M source/blender/compositor/nodes/COM_OutputFileNode.cc M source/blender/compositor/nodes/COM_OutputFileNode.h =================================================================== diff --git a/source/blender/compositor/nodes/COM_OutputFileNode.cc b/source/blender/compositor/nodes/COM_OutputFileNode.cc index b0568dc308e..ab5898c526d 100644 --- a/source/blender/compositor/nodes/COM_OutputFileNode.cc +++ b/source/blender/compositor/nodes/COM_OutputFileNode.cc @@ -35,12 +35,22 @@ void OutputFileNode::map_input_sockets(NodeConverter &converter, } } +void OutputFileNode::add_preview_to_first_linked_input(NodeConverter &converter) const +{ + NodeInput *first_socket = this->get_input_socket(0); + if (first_socket->is_linked()) { + converter.add_node_input_preview(first_socket); + } +} + void OutputFileNode::convert_to_operations(NodeConverter &converter, const CompositorContext &context) const { NodeImageMultiFile *storage = (NodeImageMultiFile *)this->get_bnode()->storage; const bool is_multiview = (context.get_render_data()->scemode & R_MULTIVIEW) != 0; + add_preview_to_first_linked_input(converter); + if (!context.is_rendering()) { /* only output files when rendering a sequence - * otherwise, it overwrites the output files just @@ -81,7 +91,6 @@ void OutputFileNode::convert_to_operations(NodeConverter &converter, map_input_sockets(converter, *output_operation); } else { /* single layer format */ - bool preview_added = false; for (NodeInput *input : inputs_) { if (input->is_linked()) { NodeImageMultiFileSocket *sockdata = @@ -133,11 +142,6 @@ void OutputFileNode::convert_to_operations(NodeConverter &converter, converter.add_operation(output_operation); converter.map_input_socket(input, output_operation->get_input_socket(0)); - - if (!preview_added) { - converter.add_node_input_preview(input); - preview_added = true; - } } } } diff --git a/source/blender/compositor/nodes/COM_OutputFileNode.h b/source/blender/compositor/nodes/COM_OutputFileNode.h index be2464c1888..61d8700270e 100644 --- a/source/blender/compositor/nodes/COM_OutputFileNode.h +++ b/source/blender/compositor/nodes/COM_OutputFileNode.h @@ -22,6 +22,7 @@ class OutputFileNode : public Node { const CompositorContext &context) const override; private: + void add_preview_to_first_linked_input(NodeConverter &converter) const; void add_input_sockets(OutputOpenExrMultiLayerOperation &operation) const; void map_input_sockets(NodeConverter &converter, OutputOpenExrMultiLayerOperation &operation) const; _______________________________________________ Bf-blender-cvs mailing list [email protected] List details, subscription details or unsubscribe: https://lists.blender.org/mailman/listinfo/bf-blender-cvs
