[Bf-blender-cvs] [a5799f126d7] temp-viewport-compositor-compiler: Viewport Compositor: Add stubs for unsupported nodes

Omar Emara noreply at git.blender.org
Mon Apr 11 13:03:50 CEST 2022


Commit: a5799f126d7d24efa53d116e2048db5687e6ebef
Author: Omar Emara
Date:   Mon Apr 11 13:01:54 2022 +0200
Branches: temp-viewport-compositor-compiler
https://developer.blender.org/rBa5799f126d7d24efa53d116e2048db5687e6ebef

Viewport Compositor: Add stubs for unsupported nodes

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

M	source/blender/nodes/composite/nodes/node_composite_antialiasing.cc
M	source/blender/nodes/composite/nodes/node_composite_bilateralblur.cc
M	source/blender/nodes/composite/nodes/node_composite_blur.cc
M	source/blender/nodes/composite/nodes/node_composite_bokehblur.cc
M	source/blender/nodes/composite/nodes/node_composite_bokehimage.cc
M	source/blender/nodes/composite/nodes/node_composite_boxmask.cc
M	source/blender/nodes/composite/nodes/node_composite_convert_color_space.cc
M	source/blender/nodes/composite/nodes/node_composite_cornerpin.cc
M	source/blender/nodes/composite/nodes/node_composite_cryptomatte.cc
M	source/blender/nodes/composite/nodes/node_composite_defocus.cc
M	source/blender/nodes/composite/nodes/node_composite_denoise.cc
M	source/blender/nodes/composite/nodes/node_composite_despeckle.cc
M	source/blender/nodes/composite/nodes/node_composite_dilate.cc
M	source/blender/nodes/composite/nodes/node_composite_directionalblur.cc
M	source/blender/nodes/composite/nodes/node_composite_displace.cc
M	source/blender/nodes/composite/nodes/node_composite_double_edge_mask.cc
M	source/blender/nodes/composite/nodes/node_composite_ellipsemask.cc
M	source/blender/nodes/composite/nodes/node_composite_glare.cc
M	source/blender/nodes/composite/nodes/node_composite_id_mask.cc
M	source/blender/nodes/composite/nodes/node_composite_inpaint.cc
M	source/blender/nodes/composite/nodes/node_composite_keying.cc
M	source/blender/nodes/composite/nodes/node_composite_keyingscreen.cc
M	source/blender/nodes/composite/nodes/node_composite_lensdist.cc
M	source/blender/nodes/composite/nodes/node_composite_levels.cc
M	source/blender/nodes/composite/nodes/node_composite_map_uv.cc
M	source/blender/nodes/composite/nodes/node_composite_mask.cc
M	source/blender/nodes/composite/nodes/node_composite_moviedistortion.cc
M	source/blender/nodes/composite/nodes/node_composite_normalize.cc
M	source/blender/nodes/composite/nodes/node_composite_output_file.cc
M	source/blender/nodes/composite/nodes/node_composite_pixelate.cc
M	source/blender/nodes/composite/nodes/node_composite_planetrackdeform.cc
M	source/blender/nodes/composite/nodes/node_composite_scale.cc
M	source/blender/nodes/composite/nodes/node_composite_stabilize2d.cc
M	source/blender/nodes/composite/nodes/node_composite_sunbeams.cc
M	source/blender/nodes/composite/nodes/node_composite_switch.cc
M	source/blender/nodes/composite/nodes/node_composite_switchview.cc
M	source/blender/nodes/composite/nodes/node_composite_texture.cc
M	source/blender/nodes/composite/nodes/node_composite_tonemap.cc
M	source/blender/nodes/composite/nodes/node_composite_trackpos.cc
M	source/blender/nodes/composite/nodes/node_composite_vec_blur.cc
M	source/blender/nodes/composite/nodes/node_composite_zcombine.cc
M	source/blender/viewport_compositor/CMakeLists.txt
M	source/blender/viewport_compositor/VPC_node_operation.hh
A	source/blender/viewport_compositor/VPC_unsupported_node_operation.hh
M	source/blender/viewport_compositor/intern/node_operation.cc
A	source/blender/viewport_compositor/intern/unsupported_node_operation.cc

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

diff --git a/source/blender/nodes/composite/nodes/node_composite_antialiasing.cc b/source/blender/nodes/composite/nodes/node_composite_antialiasing.cc
index fcc04a85b38..755999d1fdb 100644
--- a/source/blender/nodes/composite/nodes/node_composite_antialiasing.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_antialiasing.cc
@@ -26,6 +26,8 @@
 #include "UI_interface.h"
 #include "UI_resources.h"
 
+#include "VPC_unsupported_node_operation.hh"
+
 #include "node_composite_util.hh"
 
 /* **************** Anti-Aliasing (SMAA 1x) ******************** */
@@ -60,6 +62,13 @@ static void node_composit_buts_antialiasing(uiLayout *layout, bContext *UNUSED(C
   uiItemR(col, ptr, "corner_rounding", 0, nullptr, ICON_NONE);
 }
 
+using namespace blender::viewport_compositor;
+
+static NodeOperation *get_compositor_operation(Context &context, DNode node)
+{
+  return new UnsupportedNodeOperation(context, node);
+}
+
 }  // namespace blender::nodes::node_composite_antialiasing_cc
 
 void register_node_type_cmp_antialiasing()
@@ -76,6 +85,7 @@ void register_node_type_cmp_antialiasing()
   node_type_init(&ntype, file_ns::node_composit_init_antialiasing);
   node_type_storage(
       &ntype, "NodeAntiAliasingData", node_free_standard_storage, node_copy_standard_storage);
+  ntype.get_compositor_operation = file_ns::get_compositor_operation;
 
   nodeRegisterType(&ntype);
 }
diff --git a/source/blender/nodes/composite/nodes/node_composite_bilateralblur.cc b/source/blender/nodes/composite/nodes/node_composite_bilateralblur.cc
index 1c3303103f8..715c9c9a254 100644
--- a/source/blender/nodes/composite/nodes/node_composite_bilateralblur.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_bilateralblur.cc
@@ -24,6 +24,8 @@
 #include "UI_interface.h"
 #include "UI_resources.h"
 
+#include "VPC_unsupported_node_operation.hh"
+
 #include "node_composite_util.hh"
 
 /* **************** BILATERALBLUR ******************** */
@@ -58,6 +60,13 @@ static void node_composit_buts_bilateralblur(uiLayout *layout,
   uiItemR(col, ptr, "sigma_space", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE);
 }
 
+using namespace blender::viewport_compositor;
+
+static NodeOperation *get_compositor_operation(Context &context, DNode node)
+{
+  return new UnsupportedNodeOperation(context, node);
+}
+
 }  // namespace blender::nodes::node_composite_bilateralblur_cc
 
 void register_node_type_cmp_bilateralblur()
@@ -72,6 +81,7 @@ void register_node_type_cmp_bilateralblur()
   node_type_init(&ntype, file_ns::node_composit_init_bilateralblur);
   node_type_storage(
       &ntype, "NodeBilateralBlurData", node_free_standard_storage, node_copy_standard_storage);
+  ntype.get_compositor_operation = file_ns::get_compositor_operation;
 
   nodeRegisterType(&ntype);
 }
diff --git a/source/blender/nodes/composite/nodes/node_composite_blur.cc b/source/blender/nodes/composite/nodes/node_composite_blur.cc
index dd0a6db74c1..f3d6005cd27 100644
--- a/source/blender/nodes/composite/nodes/node_composite_blur.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_blur.cc
@@ -27,6 +27,8 @@
 #include "UI_interface.h"
 #include "UI_resources.h"
 
+#include "VPC_unsupported_node_operation.hh"
+
 #include "node_composite_util.hh"
 
 /* **************** BLUR ******************** */
@@ -88,6 +90,13 @@ static void node_composit_buts_blur(uiLayout *layout, bContext *UNUSED(C), Point
   uiItemR(col, ptr, "use_extended_bounds", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE);
 }
 
+using namespace blender::viewport_compositor;
+
+static NodeOperation *get_compositor_operation(Context &context, DNode node)
+{
+  return new UnsupportedNodeOperation(context, node);
+}
+
 }  // namespace blender::nodes::node_composite_blur_cc
 
 void register_node_type_cmp_blur()
@@ -103,6 +112,7 @@ void register_node_type_cmp_blur()
   node_type_init(&ntype, file_ns::node_composit_init_blur);
   node_type_storage(
       &ntype, "NodeBlurData", node_free_standard_storage, node_copy_standard_storage);
+  ntype.get_compositor_operation = file_ns::get_compositor_operation;
 
   nodeRegisterType(&ntype);
 }
diff --git a/source/blender/nodes/composite/nodes/node_composite_bokehblur.cc b/source/blender/nodes/composite/nodes/node_composite_bokehblur.cc
index 282328b5e10..5aca12b1320 100644
--- a/source/blender/nodes/composite/nodes/node_composite_bokehblur.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_bokehblur.cc
@@ -25,6 +25,8 @@
 #include "UI_interface.h"
 #include "UI_resources.h"
 
+#include "VPC_unsupported_node_operation.hh"
+
 #include "node_composite_util.hh"
 
 /* **************** BLUR ******************** */
@@ -54,6 +56,13 @@ static void node_composit_buts_bokehblur(uiLayout *layout, bContext *UNUSED(C),
   uiItemR(layout, ptr, "use_extended_bounds", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE);
 }
 
+using namespace blender::viewport_compositor;
+
+static NodeOperation *get_compositor_operation(Context &context, DNode node)
+{
+  return new UnsupportedNodeOperation(context, node);
+}
+
 }  // namespace blender::nodes::node_composite_bokehblur_cc
 
 void register_node_type_cmp_bokehblur()
@@ -66,6 +75,7 @@ void register_node_type_cmp_bokehblur()
   ntype.declare = file_ns::cmp_node_bokehblur_declare;
   ntype.draw_buttons = file_ns::node_composit_buts_bokehblur;
   node_type_init(&ntype, file_ns::node_composit_init_bokehblur);
+  ntype.get_compositor_operation = file_ns::get_compositor_operation;
 
   nodeRegisterType(&ntype);
 }
diff --git a/source/blender/nodes/composite/nodes/node_composite_bokehimage.cc b/source/blender/nodes/composite/nodes/node_composite_bokehimage.cc
index df502bc625f..02de3fd4a91 100644
--- a/source/blender/nodes/composite/nodes/node_composite_bokehimage.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_bokehimage.cc
@@ -24,6 +24,8 @@
 #include "UI_interface.h"
 #include "UI_resources.h"
 
+#include "VPC_unsupported_node_operation.hh"
+
 #include "node_composite_util.hh"
 
 /* **************** Bokeh image Tools  ******************** */
@@ -61,6 +63,13 @@ static void node_composit_buts_bokehimage(uiLayout *layout, bContext *UNUSED(C),
   uiItemR(layout, ptr, "shift", UI_ITEM_R_SPLIT_EMPTY_NAME | UI_ITEM_R_SLIDER, nullptr, ICON_NONE);
 }
 
+using namespace blender::viewport_compositor;
+
+static NodeOperation *get_compositor_operation(Context &context, DNode node)
+{
+  return new UnsupportedNodeOperation(context, node);
+}
+
 }  // namespace blender::nodes::node_composite_bokehimage_cc
 
 void register_node_type_cmp_bokehimage()
@@ -76,6 +85,7 @@ void register_node_type_cmp_bokehimage()
   node_type_init(&ntype, file_ns::node_composit_init_bokehimage);
   node_type_storage(
       &ntype, "NodeBokehImage", node_free_standard_storage, node_copy_standard_storage);
+  ntype.get_compositor_operation = file_ns::get_compositor_operation;
 
   nodeRegisterType(&ntype);
 }
diff --git a/source/blender/nodes/composite/nodes/node_composite_boxmask.cc b/source/blender/nodes/composite/nodes/node_composite_boxmask.cc
index 18d3e95d396..fd8cb6324d8 100644
--- a/source/blender/nodes/composite/nodes/node_composite_boxmask.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_boxmask.cc
@@ -21,11 +21,11 @@
  * \ingroup cmpnodes
  */
 
-#include <cmath>
-
 #include "UI_interface.h"
 #include "UI_resources.h"
 
+#include "VPC_unsupported_node_operation.hh"
+
 #include "node_composite_util.hh"
 
 /* **************** SCALAR MATH ******************** */
@@ -66,32 +66,11 @@ static void node_composit_buts_boxmask(uiLayout *layout, bContext *UNUSED(C), Po
   uiItemR(layout, ptr, "mask_type", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE);
 }
 
-static int node_composite_gpu_boxmask(GPUMaterial *mat,
-                                      bNode *node,
-                                      bNodeExecData *UNUSED(execdata),
-                                      GPUNodeStack *in,
-                                      GPUNodeStack *out)
+using namespace blender::viewport_compositor;
+
+static NodeOperation *get_compositor_operation(Context &context, DNode node)
 {
-  const NodeBoxMask *data = (NodeBoxMask *)node->storage;
-
-  const float mask_type = (float)node->custom1;
-  const float cos_angle = std::cos(data->rotation);
-  const float sin_angle = std::sin(data->rotation);
-  const float half_width = data->width / 2.0;
-  const float half_height = data->height / 2.0;
-
-  return GPU_stack_link(mat,
-                        node,
-                        "node_composite_box_mask",
-                        in,
-                        out,
-                        GPU_constant(&mask_type),
-                        GPU_uniform(&data->x),
-                        GPU_uniform(&data->y),
-                        GPU_uniform(&half_width),
-                        GPU_uniform(&half_height),
-                        GPU_uniform(&cos_angle),
-                        GPU_uniform(&sin_angle));
+  return new UnsupportedNodeOperation(context, node);
 }
 
 }  // namespace blender::nodes::node_composite_boxmask_cc
@@ -107,7 +86,7 @@ void register_node_type_cmp_boxmask()
   ntype.draw_buttons = file_ns::node_composit_buts_boxmask;
   node_type_init(&ntype, file_ns::node_composit_init_boxmask);
   node_type_storage(&ntype, "NodeBoxMask", node_free_standard_storage, node_copy_standard_storage);
-  node_type_gpu(&ntype, file_ns::node_composite_gpu_boxmask);
+  ntype.get_compositor_operation = file_ns::get_compositor_operation;
 
   nodeRegisterType(&ntype);
 }
diff --git a/source/blender/nodes/composite/nodes/node_composite_convert_color_space.cc b/source/blender/nodes/composite/nodes/node_composite_convert_color_space.cc
index 75af21ab9a2..ce0346dc516 100644
--- a/source/blender/nodes/composite/nodes/node_composite_convert_color_space.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_convert_color_space.cc
@@ -30,6 +30,8 @@
 
 #include "IMB_colormanagement.h"
 
+#include "VPC_unsupported_node_operation.hh"
+
 namespace blender::nodes::node_composite_convert_color_space_cc {
 
 static void CMP_NODE_CONVERT_COLOR_SPACE_declare(NodeDeclarationBuilder &b)
@@ -63,6 +65,13 @@ static void node_composit_buts_convert_colorspace(uiLayout *layout,
   uiItemR(layout, ptr, "to_color_space", UI_ITEM_R_S

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list