[Bf-blender-cvs] [b7073fa7979] master: Cleanup: Use new socket builder API

Aaron Carlisle noreply at git.blender.org
Wed Jan 5 06:59:25 CET 2022


Commit: b7073fa7979c66a288f50f68121a97b7bf022b73
Author: Aaron Carlisle
Date:   Wed Jan 5 00:59:00 2022 -0500
Branches: master
https://developer.blender.org/rBb7073fa7979c66a288f50f68121a97b7bf022b73

Cleanup: Use new socket builder API

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

M	source/blender/nodes/shader/nodes/node_shader_add_shader.cc
M	source/blender/nodes/shader/nodes/node_shader_ambient_occlusion.cc
M	source/blender/nodes/shader/nodes/node_shader_blackbody.cc
M	source/blender/nodes/shader/nodes/node_shader_rgb.cc
M	source/blender/nodes/shader/nodes/node_shader_wavelength.cc

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

diff --git a/source/blender/nodes/shader/nodes/node_shader_add_shader.cc b/source/blender/nodes/shader/nodes/node_shader_add_shader.cc
index b6346995725..73d5c12ce96 100644
--- a/source/blender/nodes/shader/nodes/node_shader_add_shader.cc
+++ b/source/blender/nodes/shader/nodes/node_shader_add_shader.cc
@@ -21,18 +21,12 @@
 
 namespace blender::nodes::node_shader_add_shader_cc {
 
-/* **************** OUTPUT ******************** */
-
-static bNodeSocketTemplate sh_node_add_shader_in[] = {
-    {SOCK_SHADER, N_("Shader")},
-    {SOCK_SHADER, N_("Shader")},
-    {-1, ""},
-};
-
-static bNodeSocketTemplate sh_node_add_shader_out[] = {
-    {SOCK_SHADER, N_("Shader")},
-    {-1, ""},
-};
+static void node_declare(NodeDeclarationBuilder &b)
+{
+  b.add_input<decl::Shader>(N_("Shader"));
+  b.add_input<decl::Shader>(N_("Shader"), "Shader_001");
+  b.add_output<decl::Shader>(N_("Shader"));
+}
 
 static int node_shader_gpu_add_shader(GPUMaterial *mat,
                                       bNode *node,
@@ -53,8 +47,7 @@ void register_node_type_sh_add_shader()
   static bNodeType ntype;
 
   sh_node_type_base(&ntype, SH_NODE_ADD_SHADER, "Add Shader", NODE_CLASS_SHADER);
-  node_type_socket_templates(
-      &ntype, file_ns::sh_node_add_shader_in, file_ns::sh_node_add_shader_out);
+  ntype.declare = file_ns::node_declare;
   node_type_gpu(&ntype, file_ns::node_shader_gpu_add_shader);
 
   nodeRegisterType(&ntype);
diff --git a/source/blender/nodes/shader/nodes/node_shader_ambient_occlusion.cc b/source/blender/nodes/shader/nodes/node_shader_ambient_occlusion.cc
index 2fb0ea628e3..73f0e515a46 100644
--- a/source/blender/nodes/shader/nodes/node_shader_ambient_occlusion.cc
+++ b/source/blender/nodes/shader/nodes/node_shader_ambient_occlusion.cc
@@ -21,20 +21,14 @@
 
 namespace blender::nodes::node_shader_ambient_occlusion_cc {
 
-/* **************** OUTPUT ******************** */
-
-static bNodeSocketTemplate sh_node_ambient_occlusion_in[] = {
-    {SOCK_RGBA, N_("Color"), 1.0f, 1.0f, 1.0f, 1.0f, 0.0f, 1.0f},
-    {SOCK_FLOAT, N_("Distance"), 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1000.0f},
-    {SOCK_VECTOR, N_("Normal"), 0.0f, 0.0f, 0.0f, 1.0f, -1.0f, 1.0f, PROP_NONE, SOCK_HIDE_VALUE},
-    {-1, ""},
-};
-
-static bNodeSocketTemplate sh_node_ambient_occlusion_out[] = {
-    {SOCK_RGBA, N_("Color"), 1.0f, 1.0f, 1.0f, 1.0f, 0.0f, 1.0f},
-    {SOCK_FLOAT, N_("AO"), 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
-    {-1, ""},
-};
+static void node_declare(NodeDeclarationBuilder &b)
+{
+  b.add_input<decl::Color>(N_("Color")).default_value({1.0f, 1.0f, 1.0f, 1.0f});
+  b.add_input<decl::Float>(N_("Distance")).default_value(1.0f).min(0.0f).max(1000.0f);
+  b.add_input<decl::Vector>(N_("Normal")).min(-1.0f).max(1.0f).hide_value();
+  b.add_output<decl::Color>(N_("Color"));
+  b.add_output<decl::Float>(N_("AO"));
+}
 
 static int node_shader_gpu_ambient_occlusion(GPUMaterial *mat,
                                              bNode *node,
@@ -76,8 +70,7 @@ void register_node_type_sh_ambient_occlusion()
   static bNodeType ntype;
 
   sh_node_type_base(&ntype, SH_NODE_AMBIENT_OCCLUSION, "Ambient Occlusion", NODE_CLASS_INPUT);
-  node_type_socket_templates(
-      &ntype, file_ns::sh_node_ambient_occlusion_in, file_ns::sh_node_ambient_occlusion_out);
+  ntype.declare = file_ns::node_declare;
   node_type_init(&ntype, file_ns::node_shader_init_ambient_occlusion);
   node_type_gpu(&ntype, file_ns::node_shader_gpu_ambient_occlusion);
 
diff --git a/source/blender/nodes/shader/nodes/node_shader_blackbody.cc b/source/blender/nodes/shader/nodes/node_shader_blackbody.cc
index 1e71201f295..85e2ed08403 100644
--- a/source/blender/nodes/shader/nodes/node_shader_blackbody.cc
+++ b/source/blender/nodes/shader/nodes/node_shader_blackbody.cc
@@ -21,16 +21,11 @@
 
 namespace blender::nodes::node_shader_blackbody_cc {
 
-/* **************** Blackbody ******************** */
-static bNodeSocketTemplate sh_node_blackbody_in[] = {
-    {SOCK_FLOAT, N_("Temperature"), 1500.0f, 0.0f, 0.0f, 0.0f, 800.0f, 12000.0f},
-    {-1, ""},
-};
-
-static bNodeSocketTemplate sh_node_blackbody_out[] = {
-    {SOCK_RGBA, N_("Color")},
-    {-1, ""},
-};
+static void node_declare(NodeDeclarationBuilder &b)
+{
+  b.add_input<decl::Float>(N_("Temperature")).default_value(1500.0f).min(800.0f).max(12000.0f);
+  b.add_output<decl::Color>(N_("Color"));
+}
 
 static int node_shader_gpu_blackbody(GPUMaterial *mat,
                                      bNode *node,
@@ -59,9 +54,8 @@ void register_node_type_sh_blackbody()
   static bNodeType ntype;
 
   sh_node_type_base(&ntype, SH_NODE_BLACKBODY, "Blackbody", NODE_CLASS_CONVERTER);
+  ntype.declare = file_ns::node_declare;
   node_type_size_preset(&ntype, NODE_SIZE_MIDDLE);
-  node_type_socket_templates(
-      &ntype, file_ns::sh_node_blackbody_in, file_ns::sh_node_blackbody_out);
   node_type_gpu(&ntype, file_ns::node_shader_gpu_blackbody);
 
   nodeRegisterType(&ntype);
diff --git a/source/blender/nodes/shader/nodes/node_shader_rgb.cc b/source/blender/nodes/shader/nodes/node_shader_rgb.cc
index b336ea961c3..f3b83b72232 100644
--- a/source/blender/nodes/shader/nodes/node_shader_rgb.cc
+++ b/source/blender/nodes/shader/nodes/node_shader_rgb.cc
@@ -25,11 +25,10 @@
 
 namespace blender::nodes::node_shader_rgb_cc {
 
-/* **************** RGB ******************** */
-static bNodeSocketTemplate sh_node_rgb_out[] = {
-    {SOCK_RGBA, N_("Color"), 0.5f, 0.5f, 0.5f, 1.0f},
-    {-1, ""},
-};
+static void node_declare(NodeDeclarationBuilder &b)
+{
+  b.add_output<decl::Color>(N_("Color")).default_value({0.5f, 0.5f, 0.5f, 1.0f});
+}
 
 static int gpu_shader_rgb(GPUMaterial *mat,
                           bNode *node,
@@ -50,7 +49,7 @@ void register_node_type_sh_rgb()
   static bNodeType ntype;
 
   sh_node_type_base(&ntype, SH_NODE_RGB, "RGB", NODE_CLASS_INPUT);
-  node_type_socket_templates(&ntype, nullptr, file_ns::sh_node_rgb_out);
+  ntype.declare = file_ns::node_declare;
   node_type_gpu(&ntype, file_ns::gpu_shader_rgb);
 
   nodeRegisterType(&ntype);
diff --git a/source/blender/nodes/shader/nodes/node_shader_wavelength.cc b/source/blender/nodes/shader/nodes/node_shader_wavelength.cc
index 6e2da5e909b..a67c7830edd 100644
--- a/source/blender/nodes/shader/nodes/node_shader_wavelength.cc
+++ b/source/blender/nodes/shader/nodes/node_shader_wavelength.cc
@@ -21,16 +21,11 @@
 
 namespace blender::nodes::node_shader_wavelength_cc {
 
-/* **************** Wavelength ******************** */
-static bNodeSocketTemplate sh_node_wavelength_in[] = {
-    {SOCK_FLOAT, N_("Wavelength"), 500.0f, 0.0f, 0.0f, 0.0f, 380.0f, 780.0f},
-    {-1, ""},
-};
-
-static bNodeSocketTemplate sh_node_wavelength_out[] = {
-    {SOCK_RGBA, N_("Color")},
-    {-1, ""},
-};
+static void node_declare(NodeDeclarationBuilder &b)
+{
+  b.add_input<decl::Float>(N_("Wavelength")).default_value(500.0f).min(380.0f).max(780.0f);
+  b.add_output<decl::Color>(N_("Color"));
+}
 
 static int node_shader_gpu_wavelength(GPUMaterial *mat,
                                       bNode *node,
@@ -69,9 +64,8 @@ void register_node_type_sh_wavelength()
   static bNodeType ntype;
 
   sh_node_type_base(&ntype, SH_NODE_WAVELENGTH, "Wavelength", NODE_CLASS_CONVERTER);
+  ntype.declare = file_ns::node_declare;
   node_type_size_preset(&ntype, NODE_SIZE_MIDDLE);
-  node_type_socket_templates(
-      &ntype, file_ns::sh_node_wavelength_in, file_ns::sh_node_wavelength_out);
   node_type_gpu(&ntype, file_ns::node_shader_gpu_wavelength);
 
   nodeRegisterType(&ntype);



More information about the Bf-blender-cvs mailing list