This patch ports the newly redesigned GPU Inpaint node to the CPU. The code is mostly identical to the GPU code with the necessary adjustments to make it work with CPU. See #114849 for more information. Pull Request: https://projects.blender.org/blender/blender/pulls/117716
33 lines
942 B
C++
33 lines
942 B
C++
/* SPDX-FileCopyrightText: 2011 Blender Authors
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
|
|
#include "COM_InpaintNode.h"
|
|
#include "COM_InpaintOperation.h"
|
|
|
|
namespace blender::compositor {
|
|
|
|
InpaintNode::InpaintNode(bNode *editor_node) : Node(editor_node)
|
|
{
|
|
/* pass */
|
|
}
|
|
|
|
void InpaintNode::convert_to_operations(NodeConverter &converter,
|
|
const CompositorContext & /*context*/) const
|
|
{
|
|
|
|
const bNode *editor_node = this->get_bnode();
|
|
|
|
/* if (editor_node->custom1 == CMP_NODE_INPAINT_SIMPLE) { */
|
|
if (true) {
|
|
InpaintSimpleOperation *operation = new InpaintSimpleOperation();
|
|
operation->set_max_distance(editor_node->custom2);
|
|
converter.add_operation(operation);
|
|
|
|
converter.map_input_socket(get_input_socket(0), operation->get_input_socket(0));
|
|
converter.map_output_socket(get_output_socket(0), operation->get_output_socket(0));
|
|
}
|
|
}
|
|
|
|
} // namespace blender::compositor
|