Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron Carlisle <carlisle.b3d@gmail.com>2021-09-29 07:09:41 +0300
committerAaron Carlisle <carlisle.b3d@gmail.com>2021-09-29 07:09:41 +0300
commit756c22bb411f50e6fcb400fb8dcb3e58968e5f75 (patch)
tree8507d345a8991f11cc97a10d567f233f33884110 /source/blender/nodes/composite
parentd1220f795f3b81d2b1a901fd4980f9446ce07431 (diff)
Cleanup: Compositor: Migrate color nodes to new socket builder
Diffstat (limited to 'source/blender/nodes/composite')
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_alphaOver.cc24
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_brightness.cc23
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_colorbalance.cc21
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_colorcorrection.cc23
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_curves.cc25
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_exposure.cc21
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_gamma.cc25
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_hueSatVal.cc32
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_huecorrect.cc20
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_invert.cc17
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_mixrgb.cc24
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_tonemap.cc19
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_zcombine.cc30
13 files changed, 166 insertions, 138 deletions
diff --git a/source/blender/nodes/composite/nodes/node_composite_alphaOver.cc b/source/blender/nodes/composite/nodes/node_composite_alphaOver.cc
index 156faed8524..6210d946bc7 100644
--- a/source/blender/nodes/composite/nodes/node_composite_alphaOver.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_alphaOver.cc
@@ -24,16 +24,18 @@
#include "node_composite_util.hh"
/* **************** ALPHAOVER ******************** */
-static bNodeSocketTemplate cmp_node_alphaover_in[] = {
- {SOCK_FLOAT, N_("Fac"), 1.0f, 0.0f, 1.0f, 1.0f, 0.0f, 1.0f, PROP_FACTOR},
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {-1, ""},
-};
-static bNodeSocketTemplate cmp_node_alphaover_out[] = {
- {SOCK_RGBA, N_("Image")},
- {-1, ""},
-};
+
+namespace blender::nodes {
+
+static void cmp_node_alphaover_declare(NodeDeclarationBuilder &b)
+{
+ b.add_input<decl::Float>("Fac").default_value(1.0f).min(0.0f).max(1.0f).subtype(PROP_FACTOR);
+ b.add_input<decl::Color>("Image").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_input<decl::Color>("Image", "Image_001").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_output<decl::Color>("Image");
+}
+
+} // namespace blender::nodes
static void node_alphaover_init(bNodeTree *UNUSED(ntree), bNode *node)
{
@@ -45,7 +47,7 @@ void register_node_type_cmp_alphaover(void)
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_ALPHAOVER, "Alpha Over", NODE_CLASS_OP_COLOR, 0);
- node_type_socket_templates(&ntype, cmp_node_alphaover_in, cmp_node_alphaover_out);
+ ntype.declare = blender::nodes::cmp_node_alphaover_declare;
node_type_init(&ntype, node_alphaover_init);
node_type_storage(
&ntype, "NodeTwoFloats", node_free_standard_storage, node_copy_standard_storage);
diff --git a/source/blender/nodes/composite/nodes/node_composite_brightness.cc b/source/blender/nodes/composite/nodes/node_composite_brightness.cc
index 790ccea4dc5..ad4b09c69d0 100644
--- a/source/blender/nodes/composite/nodes/node_composite_brightness.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_brightness.cc
@@ -25,16 +25,17 @@
/* **************** Bright and Contrast ******************** */
-static bNodeSocketTemplate cmp_node_brightcontrast_in[] = {
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {SOCK_FLOAT, N_("Bright"), 0.0f, 0.0f, 0.0f, 0.0f, -100.0f, 100.0f, PROP_NONE},
- {SOCK_FLOAT, N_("Contrast"), 0.0f, 0.0f, 0.0f, 0.0f, -100.0f, 100.0f, PROP_NONE},
- {-1, ""},
-};
-static bNodeSocketTemplate cmp_node_brightcontrast_out[] = {
- {SOCK_RGBA, N_("Image")},
- {-1, ""},
-};
+namespace blender::nodes {
+
+static void cmp_node_brightcontrast_declare(NodeDeclarationBuilder &b)
+{
+ b.add_input<decl::Color>("Image").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_input<decl::Float>("Bright").min(-100.0f).max(100.0f);
+ b.add_input<decl::Float>("Contrast").min(-100.0f).max(100.0f);
+ b.add_output<decl::Color>("Image");
+}
+
+} // namespace blender::nodes
static void node_composit_init_brightcontrast(bNodeTree *UNUSED(ntree), bNode *node)
{
@@ -46,7 +47,7 @@ void register_node_type_cmp_brightcontrast(void)
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_BRIGHTCONTRAST, "Bright/Contrast", NODE_CLASS_OP_COLOR, 0);
- node_type_socket_templates(&ntype, cmp_node_brightcontrast_in, cmp_node_brightcontrast_out);
+ ntype.declare = blender::nodes::cmp_node_brightcontrast_declare;
node_type_init(&ntype, node_composit_init_brightcontrast);
nodeRegisterType(&ntype);
diff --git a/source/blender/nodes/composite/nodes/node_composite_colorbalance.cc b/source/blender/nodes/composite/nodes/node_composite_colorbalance.cc
index 0ca8eecd7db..440e37fe741 100644
--- a/source/blender/nodes/composite/nodes/node_composite_colorbalance.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_colorbalance.cc
@@ -24,16 +24,17 @@
#include "node_composite_util.hh"
/* ******************* Color Balance ********************************* */
-static bNodeSocketTemplate cmp_node_colorbalance_in[] = {
- {SOCK_FLOAT, N_("Fac"), 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, PROP_FACTOR},
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {-1, ""},
-};
-static bNodeSocketTemplate cmp_node_colorbalance_out[] = {
- {SOCK_RGBA, N_("Image")},
- {-1, ""},
-};
+namespace blender::nodes {
+
+static void cmp_node_colorbalance_declare(NodeDeclarationBuilder &b)
+{
+ b.add_input<decl::Float>("Fac").default_value(1.0f).min(0.0f).max(1.0f).subtype(PROP_FACTOR);
+ b.add_input<decl::Color>("Image").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_output<decl::Color>("Image");
+}
+
+} // namespace blender::nodes
/* Sync functions update formula parameters for other modes, such that the result is comparable.
* Note that the results are not exactly the same due to differences in color handling
@@ -84,7 +85,7 @@ void register_node_type_cmp_colorbalance(void)
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_COLORBALANCE, "Color Balance", NODE_CLASS_OP_COLOR, 0);
- node_type_socket_templates(&ntype, cmp_node_colorbalance_in, cmp_node_colorbalance_out);
+ ntype.declare = blender::nodes::cmp_node_colorbalance_declare;
node_type_size(&ntype, 400, 200, 400);
node_type_init(&ntype, node_composit_init_colorbalance);
node_type_storage(
diff --git a/source/blender/nodes/composite/nodes/node_composite_colorcorrection.cc b/source/blender/nodes/composite/nodes/node_composite_colorcorrection.cc
index 93f6af7bf81..0682c66f1e8 100644
--- a/source/blender/nodes/composite/nodes/node_composite_colorcorrection.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_colorcorrection.cc
@@ -23,17 +23,18 @@
#include "node_composite_util.hh"
-/* ******************* Color Balance ********************************* */
-static bNodeSocketTemplate cmp_node_colorcorrection_in[] = {
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {SOCK_FLOAT, N_("Mask"), 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, PROP_NONE},
- {-1, ""},
-};
+/* ******************* Color Correction ********************************* */
-static bNodeSocketTemplate cmp_node_colorcorrection_out[] = {
- {SOCK_RGBA, N_("Image")},
- {-1, ""},
-};
+namespace blender::nodes {
+
+static void cmp_node_colorcorrection_declare(NodeDeclarationBuilder &b)
+{
+ b.add_input<decl::Color>("Image").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_input<decl::Float>("Mask").default_value(1.0f).min(0.0f).max(1.0f);
+ b.add_output<decl::Color>("Image");
+}
+
+} // namespace blender::nodes
static void node_composit_init_colorcorrection(bNodeTree *UNUSED(ntree), bNode *node)
{
@@ -70,7 +71,7 @@ void register_node_type_cmp_colorcorrection(void)
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_COLORCORRECTION, "Color Correction", NODE_CLASS_OP_COLOR, 0);
- node_type_socket_templates(&ntype, cmp_node_colorcorrection_in, cmp_node_colorcorrection_out);
+ ntype.declare = blender::nodes::cmp_node_colorcorrection_declare;
node_type_size(&ntype, 400, 200, 600);
node_type_init(&ntype, node_composit_init_colorcorrection);
node_type_storage(
diff --git a/source/blender/nodes/composite/nodes/node_composite_curves.cc b/source/blender/nodes/composite/nodes/node_composite_curves.cc
index 885a5511165..88d96e1ca4a 100644
--- a/source/blender/nodes/composite/nodes/node_composite_curves.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_curves.cc
@@ -85,18 +85,19 @@ void register_node_type_cmp_curve_vec(void)
}
/* **************** CURVE RGB ******************** */
-static bNodeSocketTemplate cmp_node_curve_rgb_in[] = {
- {SOCK_FLOAT, N_("Fac"), 1.0f, 0.0f, 0.0f, 1.0f, -1.0f, 1.0f, PROP_FACTOR},
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {SOCK_RGBA, N_("Black Level"), 0.0f, 0.0f, 0.0f, 1.0f},
- {SOCK_RGBA, N_("White Level"), 1.0f, 1.0f, 1.0f, 1.0f},
- {-1, ""},
-};
-static bNodeSocketTemplate cmp_node_curve_rgb_out[] = {
- {SOCK_RGBA, N_("Image")},
- {-1, ""},
-};
+namespace blender::nodes {
+
+static void cmp_node_rgbcurves_declare(NodeDeclarationBuilder &b)
+{
+ b.add_input<decl::Float>("Fac").default_value(1.0f).min(-1.0f).max(1.0f).subtype(PROP_FACTOR);
+ b.add_input<decl::Color>("Image").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_input<decl::Color>("Black Level").default_value({0.0f, 0.0f, 0.0f, 1.0f});
+ b.add_input<decl::Color>("White Level").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_output<decl::Color>("Image");
+}
+
+} // namespace blender::nodes
static void node_composit_init_curve_rgb(bNodeTree *UNUSED(ntree), bNode *node)
{
@@ -108,7 +109,7 @@ void register_node_type_cmp_curve_rgb(void)
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_CURVE_RGB, "RGB Curves", NODE_CLASS_OP_COLOR, 0);
- node_type_socket_templates(&ntype, cmp_node_curve_rgb_in, cmp_node_curve_rgb_out);
+ ntype.declare = blender::nodes::cmp_node_rgbcurves_declare;
node_type_size(&ntype, 200, 140, 320);
node_type_init(&ntype, node_composit_init_curve_rgb);
node_type_storage(&ntype, "CurveMapping", node_free_curves, node_copy_curves);
diff --git a/source/blender/nodes/composite/nodes/node_composite_exposure.cc b/source/blender/nodes/composite/nodes/node_composite_exposure.cc
index f0259f781a5..fd959376afe 100644
--- a/source/blender/nodes/composite/nodes/node_composite_exposure.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_exposure.cc
@@ -25,22 +25,23 @@
/* **************** Exposure ******************** */
-static bNodeSocketTemplate cmp_node_exposure_in[] = {
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {SOCK_FLOAT, N_("Exposure"), 0.0f, 0.0f, 0.0f, 0.0f, -10.0f, 10.0f, PROP_NONE},
- {-1, ""},
-};
-static bNodeSocketTemplate cmp_node_exposure_out[] = {
- {SOCK_RGBA, N_("Image")},
- {-1, ""},
-};
+namespace blender::nodes {
+
+static void cmp_node_exposure_declare(NodeDeclarationBuilder &b)
+{
+ b.add_input<decl::Color>("Image").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_input<decl::Float>("Exposure").min(-10.0f).max(10.0f);
+ b.add_output<decl::Color>("Image");
+}
+
+} // namespace blender::nodes
void register_node_type_cmp_exposure(void)
{
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_EXPOSURE, "Exposure", NODE_CLASS_OP_COLOR, 0);
- node_type_socket_templates(&ntype, cmp_node_exposure_in, cmp_node_exposure_out);
+ ntype.declare = blender::nodes::cmp_node_exposure_declare;
nodeRegisterType(&ntype);
}
diff --git a/source/blender/nodes/composite/nodes/node_composite_gamma.cc b/source/blender/nodes/composite/nodes/node_composite_gamma.cc
index b2b63c58411..62bc99ff1be 100644
--- a/source/blender/nodes/composite/nodes/node_composite_gamma.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_gamma.cc
@@ -25,22 +25,27 @@
/* **************** Gamma Tools ******************** */
-static bNodeSocketTemplate cmp_node_gamma_in[] = {
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {SOCK_FLOAT, N_("Gamma"), 1.0f, 0.0f, 0.0f, 0.0f, 0.001f, 10.0f, PROP_UNSIGNED},
- {-1, ""},
-};
-static bNodeSocketTemplate cmp_node_gamma_out[] = {
- {SOCK_RGBA, N_("Image")},
- {-1, ""},
-};
+namespace blender::nodes {
+
+static void cmp_node_gamma_declare(NodeDeclarationBuilder &b)
+{
+ b.add_input<decl::Color>("Image").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_input<decl::Float>("Gamma")
+ .default_value(1.0f)
+ .min(0.001f)
+ .max(10.0f)
+ .subtype(PROP_UNSIGNED);
+ b.add_output<decl::Color>("Image");
+}
+
+} // namespace blender::nodes
void register_node_type_cmp_gamma(void)
{
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_GAMMA, "Gamma", NODE_CLASS_OP_COLOR, 0);
- node_type_socket_templates(&ntype, cmp_node_gamma_in, cmp_node_gamma_out);
+ ntype.declare = blender::nodes::cmp_node_gamma_declare;
nodeRegisterType(&ntype);
}
diff --git a/source/blender/nodes/composite/nodes/node_composite_hueSatVal.cc b/source/blender/nodes/composite/nodes/node_composite_hueSatVal.cc
index c0fb89bd3c4..07746918a94 100644
--- a/source/blender/nodes/composite/nodes/node_composite_hueSatVal.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_hueSatVal.cc
@@ -24,25 +24,31 @@
#include "node_composite_util.hh"
/* **************** Hue Saturation ******************** */
-static bNodeSocketTemplate cmp_node_hue_sat_in[] = {
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {SOCK_FLOAT, N_("Hue"), 0.5f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_FACTOR},
- {SOCK_FLOAT, N_("Saturation"), 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 2.0f, PROP_FACTOR},
- {SOCK_FLOAT, N_("Value"), 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 2.0f, PROP_FACTOR},
- {SOCK_FLOAT, N_("Fac"), 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_FACTOR},
- {-1, ""},
-};
-static bNodeSocketTemplate cmp_node_hue_sat_out[] = {
- {SOCK_RGBA, N_("Image")},
- {-1, ""},
-};
+
+namespace blender::nodes {
+
+static void cmp_node_huesatval_declare(NodeDeclarationBuilder &b)
+{
+ b.add_input<decl::Color>("Image").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_input<decl::Float>("Hue").default_value(0.5f).min(0.0f).max(1.0f).subtype(PROP_FACTOR);
+ b.add_input<decl::Float>("Saturation")
+ .default_value(1.0f)
+ .min(0.0f)
+ .max(2.0f)
+ .subtype(PROP_FACTOR);
+ b.add_input<decl::Float>("Value").default_value(1.0f).min(0.0f).max(2.0f).subtype(PROP_FACTOR);
+ b.add_input<decl::Float>("Fac").default_value(1.0f).min(0.0f).max(1.0f).subtype(PROP_FACTOR);
+ b.add_output<decl::Color>("Image");
+}
+
+} // namespace blender::nodes
void register_node_type_cmp_hue_sat(void)
{
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_HUE_SAT, "Hue Saturation Value", NODE_CLASS_OP_COLOR, 0);
- node_type_socket_templates(&ntype, cmp_node_hue_sat_in, cmp_node_hue_sat_out);
+ ntype.declare = blender::nodes::cmp_node_huesatval_declare;
nodeRegisterType(&ntype);
}
diff --git a/source/blender/nodes/composite/nodes/node_composite_huecorrect.cc b/source/blender/nodes/composite/nodes/node_composite_huecorrect.cc
index c577781d96d..39014896a7b 100644
--- a/source/blender/nodes/composite/nodes/node_composite_huecorrect.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_huecorrect.cc
@@ -23,16 +23,16 @@
#include "node_composite_util.hh"
-static bNodeSocketTemplate cmp_node_huecorrect_in[] = {
- {SOCK_FLOAT, N_("Fac"), 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, PROP_FACTOR},
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {-1, ""},
-};
+namespace blender::nodes {
-static bNodeSocketTemplate cmp_node_huecorrect_out[] = {
- {SOCK_RGBA, N_("Image")},
- {-1, ""},
-};
+static void cmp_node_huecorrect_declare(NodeDeclarationBuilder &b)
+{
+ b.add_input<decl::Float>("Fac").default_value(1.0f).min(0.0f).max(1.0f).subtype(PROP_FACTOR);
+ b.add_input<decl::Color>("Image").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_output<decl::Color>("Image");
+}
+
+} // namespace blender::nodes
static void node_composit_init_huecorrect(bNodeTree *UNUSED(ntree), bNode *node)
{
@@ -56,7 +56,7 @@ void register_node_type_cmp_huecorrect(void)
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_HUECORRECT, "Hue Correct", NODE_CLASS_OP_COLOR, 0);
- node_type_socket_templates(&ntype, cmp_node_huecorrect_in, cmp_node_huecorrect_out);
+ ntype.declare = blender::nodes::cmp_node_huecorrect_declare;
node_type_size(&ntype, 320, 140, 500);
node_type_init(&ntype, node_composit_init_huecorrect);
node_type_storage(&ntype, "CurveMapping", node_free_curves, node_copy_curves);
diff --git a/source/blender/nodes/composite/nodes/node_composite_invert.cc b/source/blender/nodes/composite/nodes/node_composite_invert.cc
index 88fd18326d9..57b7ed36ccd 100644
--- a/source/blender/nodes/composite/nodes/node_composite_invert.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_invert.cc
@@ -24,12 +24,17 @@
#include "node_composite_util.hh"
/* **************** INVERT ******************** */
-static bNodeSocketTemplate cmp_node_invert_in[] = {
- {SOCK_FLOAT, N_("Fac"), 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_FACTOR},
- {SOCK_RGBA, N_("Color"), 1.0f, 1.0f, 1.0f, 1.0f},
- {-1, ""}};
-static bNodeSocketTemplate cmp_node_invert_out[] = {{SOCK_RGBA, N_("Color")}, {-1, ""}};
+namespace blender::nodes {
+
+static void cmp_node_invert_declare(NodeDeclarationBuilder &b)
+{
+ b.add_input<decl::Float>("Fac").default_value(1.0f).min(0.0f).max(1.0f).subtype(PROP_FACTOR);
+ b.add_input<decl::Color>("Color").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_output<decl::Color>("Color");
+}
+
+} // namespace blender::nodes
static void node_composit_init_invert(bNodeTree *UNUSED(ntree), bNode *node)
{
@@ -42,7 +47,7 @@ void register_node_type_cmp_invert(void)
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_INVERT, "Invert", NODE_CLASS_OP_COLOR, 0);
- node_type_socket_templates(&ntype, cmp_node_invert_in, cmp_node_invert_out);
+ ntype.declare = blender::nodes::cmp_node_invert_declare;
node_type_init(&ntype, node_composit_init_invert);
nodeRegisterType(&ntype);
diff --git a/source/blender/nodes/composite/nodes/node_composite_mixrgb.cc b/source/blender/nodes/composite/nodes/node_composite_mixrgb.cc
index 985159c54c2..4f2a9c2717c 100644
--- a/source/blender/nodes/composite/nodes/node_composite_mixrgb.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_mixrgb.cc
@@ -24,16 +24,18 @@
#include "node_composite_util.hh"
/* **************** MIX RGB ******************** */
-static bNodeSocketTemplate cmp_node_mix_rgb_in[] = {
- {SOCK_FLOAT, N_("Fac"), 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_FACTOR},
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {-1, ""},
-};
-static bNodeSocketTemplate cmp_node_mix_rgb_out[] = {
- {SOCK_RGBA, N_("Image")},
- {-1, ""},
-};
+
+namespace blender::nodes {
+
+static void cmp_node_mixrgb_declare(NodeDeclarationBuilder &b)
+{
+ b.add_input<decl::Float>("Fac").default_value(1.0f).min(0.0f).max(1.0f).subtype(PROP_FACTOR);
+ b.add_input<decl::Color>("Image").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_input<decl::Color>("Image", "Image_001").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_output<decl::Color>("Image");
+}
+
+} // namespace blender::nodes
/* custom1 = mix type */
void register_node_type_cmp_mix_rgb(void)
@@ -41,7 +43,7 @@ void register_node_type_cmp_mix_rgb(void)
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_MIX_RGB, "Mix", NODE_CLASS_OP_COLOR, NODE_PREVIEW);
- node_type_socket_templates(&ntype, cmp_node_mix_rgb_in, cmp_node_mix_rgb_out);
+ ntype.declare = blender::nodes::cmp_node_mixrgb_declare;
node_type_label(&ntype, node_blend_label);
nodeRegisterType(&ntype);
diff --git a/source/blender/nodes/composite/nodes/node_composite_tonemap.cc b/source/blender/nodes/composite/nodes/node_composite_tonemap.cc
index 29984e3687c..85fd240ce2e 100644
--- a/source/blender/nodes/composite/nodes/node_composite_tonemap.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_tonemap.cc
@@ -23,14 +23,15 @@
#include "node_composite_util.hh"
-static bNodeSocketTemplate cmp_node_tonemap_in[] = {
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {-1, ""},
-};
-static bNodeSocketTemplate cmp_node_tonemap_out[] = {
- {SOCK_RGBA, N_("Image")},
- {-1, ""},
-};
+namespace blender::nodes {
+
+static void cmp_node_tonemap_declare(NodeDeclarationBuilder &b)
+{
+ b.add_input<decl::Color>("Image").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_output<decl::Color>("Image");
+}
+
+} // namespace blender::nodes
static void node_composit_init_tonemap(bNodeTree *UNUSED(ntree), bNode *node)
{
@@ -53,7 +54,7 @@ void register_node_type_cmp_tonemap(void)
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_TONEMAP, "Tonemap", NODE_CLASS_OP_COLOR, 0);
- node_type_socket_templates(&ntype, cmp_node_tonemap_in, cmp_node_tonemap_out);
+ ntype.declare = blender::nodes::cmp_node_tonemap_declare;
node_type_init(&ntype, node_composit_init_tonemap);
node_type_storage(&ntype, "NodeTonemap", node_free_standard_storage, node_copy_standard_storage);
diff --git a/source/blender/nodes/composite/nodes/node_composite_zcombine.cc b/source/blender/nodes/composite/nodes/node_composite_zcombine.cc
index 990f9fcd366..79e4d449159 100644
--- a/source/blender/nodes/composite/nodes/node_composite_zcombine.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_zcombine.cc
@@ -24,26 +24,28 @@
#include "node_composite_util.hh"
/* **************** Z COMBINE ******************** */
-/* lazy coder NOTE: node->custom2 is abused to send signal. */
-static bNodeSocketTemplate cmp_node_zcombine_in[] = {
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {SOCK_FLOAT, N_("Z"), 1.0f, 1.0f, 1.0f, 1.0f, 0.0f, 10000.0f, PROP_NONE},
- {SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
- {SOCK_FLOAT, N_("Z"), 1.0f, 1.0f, 1.0f, 1.0f, 0.0f, 10000.0f, PROP_NONE},
- {-1, ""},
-};
-static bNodeSocketTemplate cmp_node_zcombine_out[] = {
- {SOCK_RGBA, N_("Image")},
- {SOCK_FLOAT, N_("Z")},
- {-1, ""},
-};
+namespace blender::nodes {
+
+static void cmp_node_zcombine_declare(NodeDeclarationBuilder &b)
+{
+ b.add_input<decl::Color>("Image").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_input<decl::Float>("Z").default_value(1.0f).min(0.0f).max(10000.0f);
+ b.add_input<decl::Color>("Image", "Image_001").default_value({1.0f, 1.0f, 1.0f, 1.0f});
+ b.add_input<decl::Float>("Z", "Z_001").default_value(1.0f).min(0.0f).max(10000.0f);
+ b.add_output<decl::Color>("Image");
+ b.add_output<decl::Float>("Z");
+}
+
+} // namespace blender::nodes
+
+/* lazy coder NOTE: node->custom2 is abused to send signal. */
void register_node_type_cmp_zcombine(void)
{
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_ZCOMBINE, "Z Combine", NODE_CLASS_OP_COLOR, 0);
- node_type_socket_templates(&ntype, cmp_node_zcombine_in, cmp_node_zcombine_out);
+ ntype.declare = blender::nodes::cmp_node_zcombine_declare;
nodeRegisterType(&ntype);
}