diff options
author | Julian Eisel <julian@blender.org> | 2022-11-10 15:17:42 +0300 |
---|---|---|
committer | Julian Eisel <julian@blender.org> | 2022-11-10 15:17:42 +0300 |
commit | 7246c387435769a169ac24c91434c615df6434b4 (patch) | |
tree | 61842e3e0ce85e80720fdd7476d44d2e629f59fd /source/blender/nodes/shader | |
parent | c5f55d17096d373791363e46004176e3f7f7ae52 (diff) | |
parent | 0b4bd3ddc016298e868169a541cf6c132b10c587 (diff) |
Merge branch 'master' into asset-browser-grid-viewasset-browser-grid-view
Diffstat (limited to 'source/blender/nodes/shader')
97 files changed, 534 insertions, 438 deletions
diff --git a/source/blender/nodes/shader/CMakeLists.txt b/source/blender/nodes/shader/CMakeLists.txt index 7885ad78225..e6f90449843 100644 --- a/source/blender/nodes/shader/CMakeLists.txt +++ b/source/blender/nodes/shader/CMakeLists.txt @@ -132,22 +132,24 @@ set(LIB bf_nodes ) -if(WITH_PYTHON) - list(APPEND INC - ../../python - ) +if(WITH_FREESTYLE) + add_definitions(-DWITH_FREESTYLE) +endif() + +if(WITH_TBB) + add_definitions(-DWITH_TBB) + if(WIN32) + # TBB includes Windows.h which will define min/max macros + # that will collide with the stl versions. + add_definitions(-DNOMINMAX) + endif() list(APPEND INC_SYS - ${PYTHON_INCLUDE_DIRS} + ${TBB_INCLUDE_DIRS} ) + list(APPEND LIB - ${PYTHON_LINKFLAGS} - ${PYTHON_LIBRARIES} + ${TBB_LIBRARIES} ) - add_definitions(-DWITH_PYTHON) -endif() - -if(WITH_FREESTYLE) - add_definitions(-DWITH_FREESTYLE) endif() blender_add_lib(bf_nodes_shader "${SRC}" "${INC}" "${INC_SYS}" "${LIB}") diff --git a/source/blender/nodes/shader/node_shader_tree.cc b/source/blender/nodes/shader/node_shader_tree.cc index 57772522299..f177fc95ef8 100644 --- a/source/blender/nodes/shader/node_shader_tree.cc +++ b/source/blender/nodes/shader/node_shader_tree.cc @@ -52,7 +52,7 @@ using blender::Array; using blender::Vector; -static bool shader_tree_poll(const bContext *C, bNodeTreeType *UNUSED(treetype)) +static bool shader_tree_poll(const bContext *C, bNodeTreeType * /*treetype*/) { Scene *scene = CTX_data_scene(C); const char *engine_id = scene->r.engine; @@ -63,15 +63,13 @@ static bool shader_tree_poll(const bContext *C, bNodeTreeType *UNUSED(treetype)) !BKE_scene_use_shading_nodes_custom(scene)); } -static void shader_get_from_context(const bContext *C, - bNodeTreeType *UNUSED(treetype), - bNodeTree **r_ntree, - ID **r_id, - ID **r_from) +static void shader_get_from_context( + const bContext *C, bNodeTreeType * /*treetype*/, bNodeTree **r_ntree, ID **r_id, ID **r_from) { SpaceNode *snode = CTX_wm_space_node(C); Scene *scene = CTX_data_scene(C); ViewLayer *view_layer = CTX_data_view_layer(C); + BKE_view_layer_synced_ensure(scene, view_layer); Object *ob = BKE_view_layer_active_object_get(view_layer); if (snode->shaderfrom == SNODE_SHADER_OBJECT) { @@ -109,7 +107,7 @@ static void shader_get_from_context(const bContext *C, } } -static void foreach_nodeclass(Scene *UNUSED(scene), void *calldata, bNodeClassCallback func) +static void foreach_nodeclass(Scene * /*scene*/, void *calldata, bNodeClassCallback func) { func(calldata, NODE_CLASS_INPUT, N_("Input")); func(calldata, NODE_CLASS_OUTPUT, N_("Output")); @@ -124,7 +122,7 @@ static void foreach_nodeclass(Scene *UNUSED(scene), void *calldata, bNodeClassCa func(calldata, NODE_CLASS_LAYOUT, N_("Layout")); } -static void localize(bNodeTree *localtree, bNodeTree *UNUSED(ntree)) +static void localize(bNodeTree *localtree, bNodeTree * /*ntree*/) { /* replace muted nodes and reroute nodes by internal links */ LISTBASE_FOREACH_MUTABLE (bNode *, node, &localtree->nodes) { @@ -152,7 +150,7 @@ static bool shader_validate_link(eNodeSocketDatatype from, eNodeSocketDatatype t return true; } -static bool shader_node_tree_socket_type_valid(bNodeTreeType *UNUSED(ntreetype), +static bool shader_node_tree_socket_type_valid(bNodeTreeType * /*ntreetype*/, bNodeSocketType *socket_type) { return nodeIsStaticSocketType(socket_type) && @@ -299,7 +297,7 @@ static bool ntree_shader_expand_socket_default(bNodeTree *localtree, BLI_assert(value_socket != nullptr); src_int = static_cast<bNodeSocketValueInt *>(socket->default_value); dst_float = static_cast<bNodeSocketValueFloat *>(value_socket->default_value); - dst_float->value = (float)(src_int->value); + dst_float->value = float(src_int->value); break; case SOCK_FLOAT: value_node = nodeAddStaticNode(nullptr, localtree, SH_NODE_VALUE); @@ -562,7 +560,7 @@ static bNode *ntree_shader_copy_branch(bNodeTree *ntree, void (*callback)(bNode *node, int user_data), int user_data) { - /* Init tmp flag. */ + /* Initialize `tmp_flag`. */ LISTBASE_FOREACH (bNode *, node, &ntree->nodes) { node->tmp_flag = -1; } @@ -641,7 +639,7 @@ static bool ntree_shader_implicit_closure_cast(bNodeTree *ntree) /* Socket already has a link to it. Add weights together. */ static void ntree_weight_tree_merge_weight(bNodeTree *ntree, - bNode *UNUSED(fromnode), + bNode * /*fromnode*/, bNodeSocket *fromsock, bNode **tonode, bNodeSocket **tosock) @@ -946,7 +944,7 @@ static bool closure_node_filter(const bNode *node) } } -static bool shader_to_rgba_node_gather(bNode *UNUSED(fromnode), bNode *tonode, void *userdata) +static bool shader_to_rgba_node_gather(bNode * /*fromnode*/, bNode *tonode, void *userdata) { Vector<bNode *> &shader_to_rgba_nodes = *(Vector<bNode *> *)userdata; if (tonode->tmp_flag == -1 && tonode->type == SH_NODE_SHADERTORGB) { @@ -986,7 +984,7 @@ static void ntree_shader_shader_to_rgba_branch(bNodeTree *ntree, bNode *output_n } } -static bool ntree_branch_node_tag(bNode *fromnode, bNode *tonode, void *UNUSED(userdata)) +static bool ntree_branch_node_tag(bNode *fromnode, bNode *tonode, void * /*userdata*/) { fromnode->tmp_flag = 1; tonode->tmp_flag = 1; @@ -1128,7 +1126,8 @@ void ntreeShaderEndExecTree(bNodeTreeExec *exec) bNodeTree *ntree = exec->nodetree; ntreeShaderEndExecTree_internal(exec); - /* XXX clear nodetree backpointer to exec data, same problem as noted in ntreeBeginExecTree */ + /* XXX: clear node-tree back-pointer to exec data, + * same problem as noted in #ntreeBeginExecTree. */ ntree->execdata = nullptr; } } diff --git a/source/blender/nodes/shader/node_shader_util.cc b/source/blender/nodes/shader/node_shader_util.cc index 059d7800fc5..929b11ded3e 100644 --- a/source/blender/nodes/shader/node_shader_util.cc +++ b/source/blender/nodes/shader/node_shader_util.cc @@ -13,7 +13,7 @@ #include "node_exec.h" -bool sh_node_poll_default(bNodeType *UNUSED(ntype), bNodeTree *ntree, const char **r_disabled_hint) +bool sh_node_poll_default(bNodeType * /*ntype*/, bNodeTree *ntree, const char **r_disabled_hint) { if (!STREQ(ntree->idname, "ShaderNodeTree")) { *r_disabled_hint = TIP_("Not a shader node tree"); @@ -22,7 +22,7 @@ bool sh_node_poll_default(bNodeType *UNUSED(ntype), bNodeTree *ntree, const char return true; } -static bool sh_fn_poll_default(bNodeType *UNUSED(ntype), +static bool sh_fn_poll_default(bNodeType * /*ntype*/, bNodeTree *ntree, const char **r_disabled_hint) { @@ -284,7 +284,7 @@ void ntreeExecGPUNodes(bNodeTreeExec *exec, GPUMaterial *mat, bNode *output_node } } -void node_shader_gpu_bump_tex_coord(GPUMaterial *mat, bNode *UNUSED(node), GPUNodeLink **link) +void node_shader_gpu_bump_tex_coord(GPUMaterial *mat, bNode * /*node*/, GPUNodeLink **link) { GPU_link(mat, "differentiate_texco", *link, link); } @@ -300,7 +300,7 @@ void node_shader_gpu_default_tex_coord(GPUMaterial *mat, bNode *node, GPUNodeLin void node_shader_gpu_tex_mapping(GPUMaterial *mat, bNode *node, GPUNodeStack *in, - GPUNodeStack *UNUSED(out)) + GPUNodeStack * /*out*/) { NodeTexBase *base = (NodeTexBase *)node->storage; TexMapping *texmap = &base->tex_mapping; 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 330bdc0ba61..8bdc5b91887 100644 --- a/source/blender/nodes/shader/nodes/node_shader_add_shader.cc +++ b/source/blender/nodes/shader/nodes/node_shader_add_shader.cc @@ -14,7 +14,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_add_shader(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -32,7 +32,7 @@ void register_node_type_sh_add_shader() sh_node_type_base(&ntype, SH_NODE_ADD_SHADER, "Add Shader", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_add_shader); + ntype.gpu_fn = 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 1e8df2e985d..85c49b47b81 100644 --- a/source/blender/nodes/shader/nodes/node_shader_ambient_occlusion.cc +++ b/source/blender/nodes/shader/nodes/node_shader_ambient_occlusion.cc @@ -17,9 +17,7 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("AO")); } -static void node_shader_buts_ambient_occlusion(uiLayout *layout, - bContext *UNUSED(C), - PointerRNA *ptr) +static void node_shader_buts_ambient_occlusion(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "samples", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE); uiItemR(layout, ptr, "inside", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE); @@ -28,7 +26,7 @@ static void node_shader_buts_ambient_occlusion(uiLayout *layout, static int node_shader_gpu_ambient_occlusion(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -50,7 +48,7 @@ static int node_shader_gpu_ambient_occlusion(GPUMaterial *mat, GPU_constant(&f_samples)); } -static void node_shader_init_ambient_occlusion(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_ambient_occlusion(bNodeTree * /*ntree*/, bNode *node) { node->custom1 = 16; /* samples */ node->custom2 = 0; @@ -68,8 +66,8 @@ void register_node_type_sh_ambient_occlusion() sh_node_type_base(&ntype, SH_NODE_AMBIENT_OCCLUSION, "Ambient Occlusion", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_ambient_occlusion; - node_type_init(&ntype, file_ns::node_shader_init_ambient_occlusion); - node_type_gpu(&ntype, file_ns::node_shader_gpu_ambient_occlusion); + ntype.initfunc = file_ns::node_shader_init_ambient_occlusion; + ntype.gpu_fn = file_ns::node_shader_gpu_ambient_occlusion; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_attribute.cc b/source/blender/nodes/shader/nodes/node_shader_attribute.cc index 65d053e6379..44f5282b688 100644 --- a/source/blender/nodes/shader/nodes/node_shader_attribute.cc +++ b/source/blender/nodes/shader/nodes/node_shader_attribute.cc @@ -16,13 +16,13 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("Alpha")); } -static void node_shader_buts_attribute(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_attribute(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "attribute_type", UI_ITEM_R_SPLIT_EMPTY_NAME, IFACE_("Type"), ICON_NONE); uiItemR(layout, ptr, "attribute_name", UI_ITEM_R_SPLIT_EMPTY_NAME, IFACE_("Name"), ICON_NONE); } -static void node_shader_init_attribute(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_attribute(bNodeTree * /*ntree*/, bNode *node) { NodeShaderAttribute *attr = MEM_cnew<NodeShaderAttribute>("NodeShaderAttribute"); node->storage = attr; @@ -30,7 +30,7 @@ static void node_shader_init_attribute(bNodeTree *UNUSED(ntree), bNode *node) static int node_shader_gpu_attribute(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -42,6 +42,16 @@ static int node_shader_gpu_attribute(GPUMaterial *mat, if (is_varying) { cd_attr = GPU_attribute(mat, CD_AUTO_FROM_NAME, attr->name); + + if (STREQ(attr->name, "color")) { + GPU_link(mat, "node_attribute_color", cd_attr, &cd_attr); + } + else if (STREQ(attr->name, "temperature")) { + GPU_link(mat, "node_attribute_temperature", cd_attr, &cd_attr); + } + } + else if (attr->type == SHD_ATTRIBUTE_VIEW_LAYER) { + cd_attr = GPU_layer_attribute(mat, attr->name); } else { cd_attr = GPU_uniform_attribute(mat, @@ -52,13 +62,6 @@ static int node_shader_gpu_attribute(GPUMaterial *mat, GPU_link(mat, "node_attribute_uniform", cd_attr, GPU_constant(&attr_hash), &cd_attr); } - if (STREQ(attr->name, "color")) { - GPU_link(mat, "node_attribute_color", cd_attr, &cd_attr); - } - else if (STREQ(attr->name, "temperature")) { - GPU_link(mat, "node_attribute_temperature", cd_attr, &cd_attr); - } - GPU_stack_link(mat, node, "node_attribute", in, out, cd_attr); if (is_varying) { @@ -83,10 +86,10 @@ void register_node_type_sh_attribute() sh_node_type_base(&ntype, SH_NODE_ATTRIBUTE, "Attribute", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_attribute; - node_type_init(&ntype, file_ns::node_shader_init_attribute); + ntype.initfunc = file_ns::node_shader_init_attribute; node_type_storage( &ntype, "NodeShaderAttribute", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_attribute); + ntype.gpu_fn = file_ns::node_shader_gpu_attribute; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_background.cc b/source/blender/nodes/shader/nodes/node_shader_background.cc index ea5c1f541ea..a1e90757157 100644 --- a/source/blender/nodes/shader/nodes/node_shader_background.cc +++ b/source/blender/nodes/shader/nodes/node_shader_background.cc @@ -15,7 +15,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_background(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -33,7 +33,7 @@ void register_node_type_sh_background() sh_node_type_base(&ntype, SH_NODE_BACKGROUND, "Background", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_background); + ntype.gpu_fn = file_ns::node_shader_gpu_background; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bevel.cc b/source/blender/nodes/shader/nodes/node_shader_bevel.cc index 4ae60af9974..53ce3876772 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bevel.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bevel.cc @@ -15,19 +15,19 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Vector>(N_("Normal")); } -static void node_shader_buts_bevel(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_bevel(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "samples", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE); } -static void node_shader_init_bevel(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_bevel(bNodeTree * /*ntree*/, bNode *node) { node->custom1 = 4; /* samples */ } static int gpu_shader_bevel(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -50,8 +50,8 @@ void register_node_type_sh_bevel() sh_node_type_base(&ntype, SH_NODE_BEVEL, "Bevel", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_bevel; - node_type_init(&ntype, file_ns::node_shader_init_bevel); - node_type_gpu(&ntype, file_ns::gpu_shader_bevel); + ntype.initfunc = file_ns::node_shader_init_bevel; + ntype.gpu_fn = file_ns::gpu_shader_bevel; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_blackbody.cc b/source/blender/nodes/shader/nodes/node_shader_blackbody.cc index 9f382e5a3bb..a31653de4b2 100644 --- a/source/blender/nodes/shader/nodes/node_shader_blackbody.cc +++ b/source/blender/nodes/shader/nodes/node_shader_blackbody.cc @@ -15,7 +15,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_blackbody(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -42,7 +42,7 @@ void register_node_type_sh_blackbody() 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_gpu(&ntype, file_ns::node_shader_gpu_blackbody); + ntype.gpu_fn = file_ns::node_shader_gpu_blackbody; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_brightness.cc b/source/blender/nodes/shader/nodes/node_shader_brightness.cc index a23783c6d46..0b1930b0434 100644 --- a/source/blender/nodes/shader/nodes/node_shader_brightness.cc +++ b/source/blender/nodes/shader/nodes/node_shader_brightness.cc @@ -15,7 +15,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int gpu_shader_brightcontrast(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -32,7 +32,7 @@ void register_node_type_sh_brightcontrast() sh_node_type_base(&ntype, SH_NODE_BRIGHTCONTRAST, "Bright/Contrast", NODE_CLASS_OP_COLOR); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_brightcontrast); + ntype.gpu_fn = file_ns::gpu_shader_brightcontrast; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bsdf_anisotropic.cc b/source/blender/nodes/shader/nodes/node_shader_bsdf_anisotropic.cc index 761a833f377..48a7c248ea9 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bsdf_anisotropic.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bsdf_anisotropic.cc @@ -28,19 +28,19 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Shader>(N_("BSDF")); } -static void node_shader_buts_anisotropic(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_anisotropic(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "distribution", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } -static void node_shader_init_anisotropic(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_anisotropic(bNodeTree * /*ntree*/, bNode *node) { node->custom1 = SHD_GLOSSY_GGX; } static int node_shader_gpu_bsdf_anisotropic(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -69,8 +69,8 @@ void register_node_type_sh_bsdf_anisotropic() ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_anisotropic; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_init(&ntype, file_ns::node_shader_init_anisotropic); - node_type_gpu(&ntype, file_ns::node_shader_gpu_bsdf_anisotropic); + ntype.initfunc = file_ns::node_shader_init_anisotropic; + ntype.gpu_fn = file_ns::node_shader_gpu_bsdf_anisotropic; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bsdf_diffuse.cc b/source/blender/nodes/shader/nodes/node_shader_bsdf_diffuse.cc index 5975e04450e..ba222a1a2c2 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bsdf_diffuse.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bsdf_diffuse.cc @@ -20,7 +20,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_bsdf_diffuse(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -45,7 +45,7 @@ void register_node_type_sh_bsdf_diffuse() sh_node_type_base(&ntype, SH_NODE_BSDF_DIFFUSE, "Diffuse BSDF", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_gpu(&ntype, file_ns::node_shader_gpu_bsdf_diffuse); + ntype.gpu_fn = file_ns::node_shader_gpu_bsdf_diffuse; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bsdf_glass.cc b/source/blender/nodes/shader/nodes/node_shader_bsdf_glass.cc index 95869f13b7e..00d2ba4a119 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bsdf_glass.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bsdf_glass.cc @@ -19,14 +19,14 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Shader>(N_("BSDF")); } -static void node_shader_init_glass(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_glass(bNodeTree * /*ntree*/, bNode *node) { node->custom1 = SHD_GLOSSY_BECKMANN; } static int node_shader_gpu_bsdf_glass(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -57,8 +57,8 @@ void register_node_type_sh_bsdf_glass() sh_node_type_base(&ntype, SH_NODE_BSDF_GLASS, "Glass BSDF", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_init(&ntype, file_ns::node_shader_init_glass); - node_type_gpu(&ntype, file_ns::node_shader_gpu_bsdf_glass); + ntype.initfunc = file_ns::node_shader_init_glass; + ntype.gpu_fn = file_ns::node_shader_gpu_bsdf_glass; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bsdf_glossy.cc b/source/blender/nodes/shader/nodes/node_shader_bsdf_glossy.cc index 07062a9730e..edccd7314d2 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bsdf_glossy.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bsdf_glossy.cc @@ -18,14 +18,14 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Shader>(N_("BSDF")); } -static void node_shader_init_glossy(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_glossy(bNodeTree * /*ntree*/, bNode *node) { node->custom1 = SHD_GLOSSY_GGX; } static int node_shader_gpu_bsdf_glossy(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -56,8 +56,8 @@ void register_node_type_sh_bsdf_glossy() sh_node_type_base(&ntype, SH_NODE_BSDF_GLOSSY, "Glossy BSDF", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_init(&ntype, file_ns::node_shader_init_glossy); - node_type_gpu(&ntype, file_ns::node_shader_gpu_bsdf_glossy); + ntype.initfunc = file_ns::node_shader_init_glossy; + ntype.gpu_fn = file_ns::node_shader_gpu_bsdf_glossy; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bsdf_hair.cc b/source/blender/nodes/shader/nodes/node_shader_bsdf_hair.cc index 1a1ba13e886..0498dcd0be5 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bsdf_hair.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bsdf_hair.cc @@ -31,14 +31,14 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Shader>(N_("BSDF")); } -static void node_shader_buts_hair(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_hair(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "component", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } static int node_shader_gpu_bsdf_hair(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -58,7 +58,7 @@ void register_node_type_sh_bsdf_hair() ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_hair; node_type_size(&ntype, 150, 60, 200); - node_type_gpu(&ntype, file_ns::node_shader_gpu_bsdf_hair); + ntype.gpu_fn = file_ns::node_shader_gpu_bsdf_hair; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bsdf_hair_principled.cc b/source/blender/nodes/shader/nodes/node_shader_bsdf_hair_principled.cc index a0579372a15..fd127cfb8ae 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bsdf_hair_principled.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bsdf_hair_principled.cc @@ -44,7 +44,7 @@ static void node_declare(NodeDeclarationBuilder &b) .subtype(PROP_FACTOR); b.add_input<decl::Float>(N_("IOR")).default_value(1.55f).min(0.0f).max(1000.0f); b.add_input<decl::Float>(N_("Offset")) - .default_value(2.0f * ((float)M_PI) / 180.0f) + .default_value(2.0f * float(M_PI) / 180.0f) .min(-M_PI_2) .max(M_PI_2) .subtype(PROP_ANGLE); @@ -63,15 +63,13 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Shader>(N_("BSDF")); } -static void node_shader_buts_principled_hair(uiLayout *layout, - bContext *UNUSED(C), - PointerRNA *ptr) +static void node_shader_buts_principled_hair(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "parametrization", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } /* Initialize the custom Parametrization property to Color. */ -static void node_shader_init_hair_principled(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_hair_principled(bNodeTree * /*ntree*/, bNode *node) { node->custom1 = SHD_PRINCIPLED_HAIR_REFLECTANCE; } @@ -110,7 +108,7 @@ static void node_shader_update_hair_principled(bNodeTree *ntree, bNode *node) static int node_shader_gpu_hair_principled(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -131,9 +129,9 @@ void register_node_type_sh_bsdf_hair_principled() ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_principled_hair; node_type_size_preset(&ntype, NODE_SIZE_LARGE); - node_type_init(&ntype, file_ns::node_shader_init_hair_principled); - node_type_update(&ntype, file_ns::node_shader_update_hair_principled); - node_type_gpu(&ntype, file_ns::node_shader_gpu_hair_principled); + ntype.initfunc = file_ns::node_shader_init_hair_principled; + ntype.updatefunc = file_ns::node_shader_update_hair_principled; + ntype.gpu_fn = file_ns::node_shader_gpu_hair_principled; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bsdf_principled.cc b/source/blender/nodes/shader/nodes/node_shader_bsdf_principled.cc index 7b72d4b9be4..82bf852455c 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bsdf_principled.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bsdf_principled.cc @@ -107,13 +107,13 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Shader>(N_("BSDF")); } -static void node_shader_buts_principled(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_principled(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "distribution", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); uiItemR(layout, ptr, "subsurface_method", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } -static void node_shader_init_principled(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_principled(bNodeTree * /*ntree*/, bNode *node) { node->custom1 = SHD_GLOSSY_GGX; node->custom2 = SHD_SUBSURFACE_RANDOM_WALK; @@ -125,7 +125,7 @@ static void node_shader_init_principled(bNodeTree *UNUSED(ntree), bNode *node) static int node_shader_gpu_bsdf_principled(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -245,9 +245,9 @@ void register_node_type_sh_bsdf_principled() ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_principled; node_type_size_preset(&ntype, NODE_SIZE_LARGE); - node_type_init(&ntype, file_ns::node_shader_init_principled); - node_type_gpu(&ntype, file_ns::node_shader_gpu_bsdf_principled); - node_type_update(&ntype, file_ns::node_shader_update_principled); + ntype.initfunc = file_ns::node_shader_init_principled; + ntype.gpu_fn = file_ns::node_shader_gpu_bsdf_principled; + ntype.updatefunc = file_ns::node_shader_update_principled; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bsdf_refraction.cc b/source/blender/nodes/shader/nodes/node_shader_bsdf_refraction.cc index e814eb223e5..d6ef63015f8 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bsdf_refraction.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bsdf_refraction.cc @@ -19,14 +19,14 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Shader>(N_("BSDF")); } -static void node_shader_init_refraction(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_refraction(bNodeTree * /*ntree*/, bNode *node) { node->custom1 = SHD_GLOSSY_BECKMANN; } static int node_shader_gpu_bsdf_refraction(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -55,8 +55,8 @@ void register_node_type_sh_bsdf_refraction() sh_node_type_base(&ntype, SH_NODE_BSDF_REFRACTION, "Refraction BSDF", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_init(&ntype, file_ns::node_shader_init_refraction); - node_type_gpu(&ntype, file_ns::node_shader_gpu_bsdf_refraction); + ntype.initfunc = file_ns::node_shader_init_refraction; + ntype.gpu_fn = file_ns::node_shader_gpu_bsdf_refraction; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bsdf_toon.cc b/source/blender/nodes/shader/nodes/node_shader_bsdf_toon.cc index c1c092e89c7..ba8e48ce410 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bsdf_toon.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bsdf_toon.cc @@ -26,14 +26,14 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Shader>(N_("BSDF")); } -static void node_shader_buts_toon(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_toon(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "component", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } static int node_shader_gpu_bsdf_toon(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -59,7 +59,7 @@ void register_node_type_sh_bsdf_toon() ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_toon; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_gpu(&ntype, file_ns::node_shader_gpu_bsdf_toon); + ntype.gpu_fn = file_ns::node_shader_gpu_bsdf_toon; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bsdf_translucent.cc b/source/blender/nodes/shader/nodes/node_shader_bsdf_translucent.cc index fd0dd9f93de..fcb3bcdd00a 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bsdf_translucent.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bsdf_translucent.cc @@ -15,7 +15,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_bsdf_translucent(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -39,7 +39,7 @@ void register_node_type_sh_bsdf_translucent() sh_node_type_base(&ntype, SH_NODE_BSDF_TRANSLUCENT, "Translucent BSDF", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_bsdf_translucent); + ntype.gpu_fn = file_ns::node_shader_gpu_bsdf_translucent; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bsdf_transparent.cc b/source/blender/nodes/shader/nodes/node_shader_bsdf_transparent.cc index 291b3fdb2be..4eba043ff2b 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bsdf_transparent.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bsdf_transparent.cc @@ -14,7 +14,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_bsdf_transparent(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -35,7 +35,7 @@ void register_node_type_sh_bsdf_transparent() sh_node_type_base(&ntype, SH_NODE_BSDF_TRANSPARENT, "Transparent BSDF", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_bsdf_transparent); + ntype.gpu_fn = file_ns::node_shader_gpu_bsdf_transparent; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bsdf_velvet.cc b/source/blender/nodes/shader/nodes/node_shader_bsdf_velvet.cc index c86d70aecbf..67351dd7e19 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bsdf_velvet.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bsdf_velvet.cc @@ -20,7 +20,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_bsdf_velvet(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -44,7 +44,7 @@ void register_node_type_sh_bsdf_velvet() sh_node_type_base(&ntype, SH_NODE_BSDF_VELVET, "Velvet BSDF", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_bsdf_velvet); + ntype.gpu_fn = file_ns::node_shader_gpu_bsdf_velvet; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_bump.cc b/source/blender/nodes/shader/nodes/node_shader_bump.cc index ad2c56d96b5..9439f95d62b 100644 --- a/source/blender/nodes/shader/nodes/node_shader_bump.cc +++ b/source/blender/nodes/shader/nodes/node_shader_bump.cc @@ -31,14 +31,14 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Vector>(N_("Normal")); } -static void node_shader_buts_bump(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_bump(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "invert", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, 0); } static int gpu_shader_bump(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -78,7 +78,7 @@ void register_node_type_sh_bump() sh_node_type_base(&ntype, SH_NODE_BUMP, "Bump", NODE_CLASS_OP_VECTOR); ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_bump; - node_type_gpu(&ntype, file_ns::gpu_shader_bump); + ntype.gpu_fn = file_ns::gpu_shader_bump; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_camera.cc b/source/blender/nodes/shader/nodes/node_shader_camera.cc index 99c82582456..2752cd31c56 100644 --- a/source/blender/nodes/shader/nodes/node_shader_camera.cc +++ b/source/blender/nodes/shader/nodes/node_shader_camera.cc @@ -18,7 +18,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int gpu_shader_camera(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -35,7 +35,7 @@ void register_node_type_sh_camera() sh_node_type_base(&ntype, SH_NODE_CAMERA, "Camera Data", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_camera); + ntype.gpu_fn = file_ns::gpu_shader_camera; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_clamp.cc b/source/blender/nodes/shader/nodes/node_shader_clamp.cc index c8785721dfb..5b7c216c4c3 100644 --- a/source/blender/nodes/shader/nodes/node_shader_clamp.cc +++ b/source/blender/nodes/shader/nodes/node_shader_clamp.cc @@ -21,19 +21,19 @@ static void sh_node_clamp_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("Result")); } -static void node_shader_buts_clamp(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_clamp(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "clamp_type", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } -static void node_shader_init_clamp(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_clamp(bNodeTree * /*ntree*/, bNode *node) { node->custom1 = NODE_CLAMP_MINMAX; /* clamp type */ } static int gpu_shader_clamp(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -76,8 +76,8 @@ void register_node_type_sh_clamp() sh_fn_node_type_base(&ntype, SH_NODE_CLAMP, "Clamp", NODE_CLASS_CONVERTER); ntype.declare = file_ns::sh_node_clamp_declare; ntype.draw_buttons = file_ns::node_shader_buts_clamp; - node_type_init(&ntype, file_ns::node_shader_init_clamp); - node_type_gpu(&ntype, file_ns::gpu_shader_clamp); + ntype.initfunc = file_ns::node_shader_init_clamp; + ntype.gpu_fn = file_ns::gpu_shader_clamp; ntype.build_multi_function = file_ns::sh_node_clamp_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_color_ramp.cc b/source/blender/nodes/shader/nodes/node_shader_color_ramp.cc index d73ffd89288..f5d405c7678 100644 --- a/source/blender/nodes/shader/nodes/node_shader_color_ramp.cc +++ b/source/blender/nodes/shader/nodes/node_shader_color_ramp.cc @@ -21,14 +21,14 @@ static void sh_node_valtorgb_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("Alpha")); } -static void node_shader_init_valtorgb(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_valtorgb(bNodeTree * /*ntree*/, bNode *node) { node->storage = BKE_colorband_add(true); } static int gpu_shader_valtorgb(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -107,7 +107,7 @@ class ColorBandFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { const VArray<float> &values = params.readonly_single_input<float>(0, "Value"); MutableSpan<ColorGeometry4f> colors = params.uninitialized_single_output<ColorGeometry4f>( @@ -140,10 +140,10 @@ void register_node_type_sh_valtorgb() sh_fn_node_type_base(&ntype, SH_NODE_VALTORGB, "ColorRamp", NODE_CLASS_CONVERTER); ntype.declare = file_ns::sh_node_valtorgb_declare; - node_type_init(&ntype, file_ns::node_shader_init_valtorgb); + ntype.initfunc = file_ns::node_shader_init_valtorgb; node_type_size_preset(&ntype, NODE_SIZE_LARGE); node_type_storage(&ntype, "ColorBand", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::gpu_shader_valtorgb); + ntype.gpu_fn = file_ns::gpu_shader_valtorgb; ntype.build_multi_function = file_ns::sh_node_valtorgb_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_common.cc b/source/blender/nodes/shader/nodes/node_shader_common.cc index 20d0d11ba86..9d1d788da9d 100644 --- a/source/blender/nodes/shader/nodes/node_shader_common.cc +++ b/source/blender/nodes/shader/nodes/node_shader_common.cc @@ -93,8 +93,8 @@ void register_node_type_sh_group() node_type_size(&ntype, 140, 60, 400); ntype.labelfunc = node_group_label; - node_type_group_update(&ntype, node_group_update); - node_type_gpu(&ntype, gpu_group_execute); + ntype.group_update_func = node_group_update; + ntype.gpu_fn = gpu_group_execute; nodeRegisterType(&ntype); } @@ -109,5 +109,5 @@ void register_node_type_sh_custom_group(bNodeType *ntype) ntype->insert_link = node_insert_link_default; } - node_type_gpu(ntype, gpu_group_execute); + ntype->gpu_fn = gpu_group_execute; } diff --git a/source/blender/nodes/shader/nodes/node_shader_curves.cc b/source/blender/nodes/shader/nodes/node_shader_curves.cc index 4725aef5991..0945c39ee50 100644 --- a/source/blender/nodes/shader/nodes/node_shader_curves.cc +++ b/source/blender/nodes/shader/nodes/node_shader_curves.cc @@ -12,19 +12,24 @@ namespace blender::nodes::node_shader_curves_cc { static void sh_node_curve_vec_declare(NodeDeclarationBuilder &b) { b.is_function_node(); - b.add_input<decl::Float>(N_("Fac")).min(0.0f).max(1.0f).default_value(1.0f).subtype(PROP_FACTOR); + b.add_input<decl::Float>(N_("Fac")) + .no_muted_links() + .min(0.0f) + .max(1.0f) + .default_value(1.0f) + .subtype(PROP_FACTOR); b.add_input<decl::Vector>(N_("Vector")).min(-1.0f).max(1.0f); b.add_output<decl::Vector>(N_("Vector")); } -static void node_shader_init_curve_vec(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_curve_vec(bNodeTree * /*ntree*/, bNode *node) { node->storage = BKE_curvemapping_add(3, -1.0f, -1.0f, 1.0f, 1.0f); } static int gpu_shader_curve_vec(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -78,7 +83,7 @@ class CurveVecFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { const VArray<float> &fac = params.readonly_single_input<float>(0, "Fac"); const VArray<float3> &vec_in = params.readonly_single_input<float3>(1, "Vector"); @@ -111,10 +116,10 @@ void register_node_type_sh_curve_vec() sh_fn_node_type_base(&ntype, SH_NODE_CURVE_VEC, "Vector Curves", NODE_CLASS_OP_VECTOR); ntype.declare = file_ns::sh_node_curve_vec_declare; - node_type_init(&ntype, file_ns::node_shader_init_curve_vec); + ntype.initfunc = file_ns::node_shader_init_curve_vec; node_type_size_preset(&ntype, NODE_SIZE_LARGE); node_type_storage(&ntype, "CurveMapping", node_free_curves, node_copy_curves); - node_type_gpu(&ntype, file_ns::gpu_shader_curve_vec); + ntype.gpu_fn = file_ns::gpu_shader_curve_vec; ntype.build_multi_function = file_ns::sh_node_curve_vec_build_multi_function; nodeRegisterType(&ntype); @@ -127,19 +132,24 @@ namespace blender::nodes::node_shader_curves_cc { static void sh_node_curve_rgb_declare(NodeDeclarationBuilder &b) { b.is_function_node(); - b.add_input<decl::Float>(N_("Fac")).min(0.0f).max(1.0f).default_value(1.0f).subtype(PROP_FACTOR); + b.add_input<decl::Float>(N_("Fac")) + .no_muted_links() + .min(0.0f) + .max(1.0f) + .default_value(1.0f) + .subtype(PROP_FACTOR); b.add_input<decl::Color>(N_("Color")).default_value({1.0f, 1.0f, 1.0f, 1.0f}); b.add_output<decl::Color>(N_("Color")); } -static void node_shader_init_curve_rgb(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_curve_rgb(bNodeTree * /*ntree*/, bNode *node) { node->storage = BKE_curvemapping_add(4, 0.0f, 0.0f, 1.0f, 1.0f); } static int gpu_shader_curve_rgb(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -218,7 +228,7 @@ class CurveRGBFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { const VArray<float> &fac = params.readonly_single_input<float>(0, "Fac"); const VArray<ColorGeometry4f> &col_in = params.readonly_single_input<ColorGeometry4f>(1, @@ -253,10 +263,10 @@ void register_node_type_sh_curve_rgb() sh_fn_node_type_base(&ntype, SH_NODE_CURVE_RGB, "RGB Curves", NODE_CLASS_OP_COLOR); ntype.declare = file_ns::sh_node_curve_rgb_declare; - node_type_init(&ntype, file_ns::node_shader_init_curve_rgb); + ntype.initfunc = file_ns::node_shader_init_curve_rgb; node_type_size_preset(&ntype, NODE_SIZE_LARGE); node_type_storage(&ntype, "CurveMapping", node_free_curves, node_copy_curves); - node_type_gpu(&ntype, file_ns::gpu_shader_curve_rgb); + ntype.gpu_fn = file_ns::gpu_shader_curve_rgb; ntype.build_multi_function = file_ns::sh_node_curve_rgb_build_multi_function; nodeRegisterType(&ntype); @@ -270,6 +280,7 @@ static void sh_node_curve_float_declare(NodeDeclarationBuilder &b) { b.is_function_node(); b.add_input<decl::Float>(N_("Factor")) + .no_muted_links() .min(0.0f) .max(1.0f) .default_value(1.0f) @@ -278,14 +289,14 @@ static void sh_node_curve_float_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("Value")); } -static void node_shader_init_curve_float(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_curve_float(bNodeTree * /*ntree*/, bNode *node) { node->storage = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f); } static int gpu_shader_curve_float(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -339,7 +350,7 @@ class CurveFloatFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { const VArray<float> &fac = params.readonly_single_input<float>(0, "Factor"); const VArray<float> &val_in = params.readonly_single_input<float>(1, "Value"); @@ -372,10 +383,10 @@ void register_node_type_sh_curve_float() sh_fn_node_type_base(&ntype, SH_NODE_CURVE_FLOAT, "Float Curve", NODE_CLASS_CONVERTER); ntype.declare = file_ns::sh_node_curve_float_declare; - node_type_init(&ntype, file_ns::node_shader_init_curve_float); + ntype.initfunc = file_ns::node_shader_init_curve_float; node_type_size_preset(&ntype, NODE_SIZE_LARGE); node_type_storage(&ntype, "CurveMapping", node_free_curves, node_copy_curves); - node_type_gpu(&ntype, file_ns::gpu_shader_curve_float); + ntype.gpu_fn = file_ns::gpu_shader_curve_float; ntype.build_multi_function = file_ns::sh_node_curve_float_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_displacement.cc b/source/blender/nodes/shader/nodes/node_shader_displacement.cc index 6591396adda..e71e2168701 100644 --- a/source/blender/nodes/shader/nodes/node_shader_displacement.cc +++ b/source/blender/nodes/shader/nodes/node_shader_displacement.cc @@ -14,7 +14,7 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Vector>(N_("Displacement")); } -static void node_shader_init_displacement(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_displacement(bNodeTree * /*ntree*/, bNode *node) { node->custom1 = SHD_SPACE_OBJECT; /* space */ @@ -28,7 +28,7 @@ static void node_shader_init_displacement(bNodeTree *UNUSED(ntree), bNode *node) static int gpu_shader_displacement(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -54,8 +54,8 @@ void register_node_type_sh_displacement() sh_node_type_base(&ntype, SH_NODE_DISPLACEMENT, "Displacement", NODE_CLASS_OP_VECTOR); ntype.declare = file_ns::node_declare; - node_type_init(&ntype, file_ns::node_shader_init_displacement); - node_type_gpu(&ntype, file_ns::gpu_shader_displacement); + ntype.initfunc = file_ns::node_shader_init_displacement; + ntype.gpu_fn = file_ns::gpu_shader_displacement; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_eevee_specular.cc b/source/blender/nodes/shader/nodes/node_shader_eevee_specular.cc index d68b0c0c37c..c13300bdac4 100644 --- a/source/blender/nodes/shader/nodes/node_shader_eevee_specular.cc +++ b/source/blender/nodes/shader/nodes/node_shader_eevee_specular.cc @@ -41,7 +41,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_eevee_specular(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -64,7 +64,7 @@ static int node_shader_gpu_eevee_specular(GPUMaterial *mat, GPU_material_flag_set(mat, GPU_MATFLAG_DIFFUSE | GPU_MATFLAG_GLOSSY); - float use_clear = (socket_not_zero(6)) ? 1.0f : 0.0f; + float use_clear = socket_not_zero(6) ? 1.0f : 0.0f; return GPU_stack_link(mat, node, "node_eevee_specular", in, out, GPU_constant(&use_clear)); } @@ -80,7 +80,7 @@ void register_node_type_sh_eevee_specular() sh_node_type_base(&ntype, SH_NODE_EEVEE_SPECULAR, "Specular BSDF", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_eevee_specular); + ntype.gpu_fn = file_ns::node_shader_gpu_eevee_specular; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_emission.cc b/source/blender/nodes/shader/nodes/node_shader_emission.cc index be98f096ce5..df6283f92dc 100644 --- a/source/blender/nodes/shader/nodes/node_shader_emission.cc +++ b/source/blender/nodes/shader/nodes/node_shader_emission.cc @@ -15,7 +15,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_emission(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -34,7 +34,7 @@ void register_node_type_sh_emission() sh_node_type_base(&ntype, SH_NODE_EMISSION, "Emission", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_emission); + ntype.gpu_fn = file_ns::node_shader_gpu_emission; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_fresnel.cc b/source/blender/nodes/shader/nodes/node_shader_fresnel.cc index 7b771d7dafd..1e35942476a 100644 --- a/source/blender/nodes/shader/nodes/node_shader_fresnel.cc +++ b/source/blender/nodes/shader/nodes/node_shader_fresnel.cc @@ -14,7 +14,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_fresnel(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -36,7 +36,7 @@ void register_node_type_sh_fresnel() sh_node_type_base(&ntype, SH_NODE_FRESNEL, "Fresnel", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_fresnel); + ntype.gpu_fn = file_ns::node_shader_gpu_fresnel; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_gamma.cc b/source/blender/nodes/shader/nodes/node_shader_gamma.cc index d1e07c8b363..327d9b134cd 100644 --- a/source/blender/nodes/shader/nodes/node_shader_gamma.cc +++ b/source/blender/nodes/shader/nodes/node_shader_gamma.cc @@ -18,7 +18,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_gamma(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -35,7 +35,7 @@ void register_node_type_sh_gamma() sh_node_type_base(&ntype, SH_NODE_GAMMA, "Gamma", NODE_CLASS_OP_COLOR); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_gamma); + ntype.gpu_fn = file_ns::node_shader_gpu_gamma; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_geometry.cc b/source/blender/nodes/shader/nodes/node_shader_geometry.cc index d23561de7ff..d7d5f4aa91f 100644 --- a/source/blender/nodes/shader/nodes/node_shader_geometry.cc +++ b/source/blender/nodes/shader/nodes/node_shader_geometry.cc @@ -20,7 +20,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_geometry(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -68,7 +68,7 @@ void register_node_type_sh_geometry() sh_node_type_base(&ntype, SH_NODE_NEW_GEOMETRY, "Geometry", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_geometry); + ntype.gpu_fn = file_ns::node_shader_gpu_geometry; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_hair_info.cc b/source/blender/nodes/shader/nodes/node_shader_hair_info.cc index f46556291ce..4511c8a9ae6 100644 --- a/source/blender/nodes/shader/nodes/node_shader_hair_info.cc +++ b/source/blender/nodes/shader/nodes/node_shader_hair_info.cc @@ -17,7 +17,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_hair_info(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -39,7 +39,7 @@ void register_node_type_sh_hair_info() sh_node_type_base(&ntype, SH_NODE_HAIR_INFO, "Curves Info", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_hair_info); + ntype.gpu_fn = file_ns::node_shader_gpu_hair_info; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_holdout.cc b/source/blender/nodes/shader/nodes/node_shader_holdout.cc index 6a21fab28db..f3f8cef5a2d 100644 --- a/source/blender/nodes/shader/nodes/node_shader_holdout.cc +++ b/source/blender/nodes/shader/nodes/node_shader_holdout.cc @@ -13,7 +13,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int gpu_shader_rgb(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -31,7 +31,7 @@ void register_node_type_sh_holdout() sh_node_type_base(&ntype, SH_NODE_HOLDOUT, "Holdout", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_rgb); + ntype.gpu_fn = file_ns::gpu_shader_rgb; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_hueSatVal.cc b/source/blender/nodes/shader/nodes/node_shader_hueSatVal.cc index a2220ebccc7..7eb02a3bce2 100644 --- a/source/blender/nodes/shader/nodes/node_shader_hueSatVal.cc +++ b/source/blender/nodes/shader/nodes/node_shader_hueSatVal.cc @@ -21,7 +21,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int gpu_shader_hue_sat(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -39,7 +39,7 @@ void register_node_type_sh_hue_sat() sh_node_type_base(&ntype, SH_NODE_HUE_SAT, "Hue Saturation Value", NODE_CLASS_OP_COLOR); ntype.declare = file_ns::node_declare; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_gpu(&ntype, file_ns::gpu_shader_hue_sat); + ntype.gpu_fn = file_ns::gpu_shader_hue_sat; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_ies_light.cc b/source/blender/nodes/shader/nodes/node_shader_ies_light.cc index bc1d662a17a..dee69eaf391 100644 --- a/source/blender/nodes/shader/nodes/node_shader_ies_light.cc +++ b/source/blender/nodes/shader/nodes/node_shader_ies_light.cc @@ -15,7 +15,7 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("Fac")); } -static void node_shader_buts_ies(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_ies(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiLayout *row; @@ -32,7 +32,7 @@ static void node_shader_buts_ies(uiLayout *layout, bContext *UNUSED(C), PointerR } } -static void node_shader_init_tex_ies(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_ies(bNodeTree * /*ntree*/, bNode *node) { NodeShaderTexIES *tex = MEM_cnew<NodeShaderTexIES>("NodeShaderIESLight"); node->storage = tex; @@ -50,7 +50,7 @@ void register_node_type_sh_tex_ies() sh_node_type_base(&ntype, SH_NODE_TEX_IES, "IES Texture", NODE_CLASS_TEXTURE); ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_ies; - node_type_init(&ntype, file_ns::node_shader_init_tex_ies); + ntype.initfunc = file_ns::node_shader_init_tex_ies; node_type_storage( &ntype, "NodeShaderTexIES", node_free_standard_storage, node_copy_standard_storage); diff --git a/source/blender/nodes/shader/nodes/node_shader_invert.cc b/source/blender/nodes/shader/nodes/node_shader_invert.cc index f87455b555d..ba2774e3b8f 100644 --- a/source/blender/nodes/shader/nodes/node_shader_invert.cc +++ b/source/blender/nodes/shader/nodes/node_shader_invert.cc @@ -18,7 +18,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int gpu_shader_invert(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -35,7 +35,7 @@ void register_node_type_sh_invert() sh_node_type_base(&ntype, SH_NODE_INVERT, "Invert", NODE_CLASS_OP_COLOR); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_invert); + ntype.gpu_fn = file_ns::gpu_shader_invert; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_layer_weight.cc b/source/blender/nodes/shader/nodes/node_shader_layer_weight.cc index 69825e472fb..f589f85fc89 100644 --- a/source/blender/nodes/shader/nodes/node_shader_layer_weight.cc +++ b/source/blender/nodes/shader/nodes/node_shader_layer_weight.cc @@ -15,7 +15,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_layer_weight(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -37,7 +37,7 @@ void register_node_type_sh_layer_weight() sh_node_type_base(&ntype, SH_NODE_LAYER_WEIGHT, "Layer Weight", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_layer_weight); + ntype.gpu_fn = file_ns::node_shader_gpu_layer_weight; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_light_falloff.cc b/source/blender/nodes/shader/nodes/node_shader_light_falloff.cc index 599becb4400..fcaf1b31e77 100644 --- a/source/blender/nodes/shader/nodes/node_shader_light_falloff.cc +++ b/source/blender/nodes/shader/nodes/node_shader_light_falloff.cc @@ -16,7 +16,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_light_falloff(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -35,7 +35,7 @@ void register_node_type_sh_light_falloff() sh_node_type_base(&ntype, SH_NODE_LIGHT_FALLOFF, "Light Falloff", NODE_CLASS_OP_COLOR); ntype.declare = file_ns::node_declare; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_gpu(&ntype, file_ns::node_shader_gpu_light_falloff); + ntype.gpu_fn = file_ns::node_shader_gpu_light_falloff; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_light_path.cc b/source/blender/nodes/shader/nodes/node_shader_light_path.cc index 1e4ecbd77b1..b04b2a2f022 100644 --- a/source/blender/nodes/shader/nodes/node_shader_light_path.cc +++ b/source/blender/nodes/shader/nodes/node_shader_light_path.cc @@ -24,7 +24,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_light_path(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -42,7 +42,7 @@ void register_node_type_sh_light_path() sh_node_type_base(&ntype, SH_NODE_LIGHT_PATH, "Light Path", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_light_path); + ntype.gpu_fn = file_ns::node_shader_gpu_light_path; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_map_range.cc b/source/blender/nodes/shader/nodes/node_shader_map_range.cc index 5fc69987c67..a906ee40b42 100644 --- a/source/blender/nodes/shader/nodes/node_shader_map_range.cc +++ b/source/blender/nodes/shader/nodes/node_shader_map_range.cc @@ -39,7 +39,7 @@ static void sh_node_map_range_declare(NodeDeclarationBuilder &b) b.add_output<decl::Vector>(N_("Vector")); } -static void node_shader_buts_map_range(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_map_range(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "data_type", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); uiItemR(layout, ptr, "interpolation_type", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); @@ -94,7 +94,7 @@ static void node_shader_update_map_range(bNodeTree *ntree, bNode *node) } } -static void node_shader_init_map_range(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_map_range(bNodeTree * /*ntree*/, bNode *node) { NodeMapRange *data = MEM_cnew<NodeMapRange>(__func__); data->clamp = 1; @@ -197,7 +197,7 @@ static const char *gpu_shader_get_name(int mode, bool use_vector) static int gpu_shader_map_range(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -502,11 +502,11 @@ void register_node_type_sh_map_range() ntype.declare = file_ns::sh_node_map_range_declare; ntype.draw_buttons = file_ns::node_shader_buts_map_range; ntype.ui_class = file_ns::node_shader_map_range_ui_class; - node_type_init(&ntype, file_ns::node_shader_init_map_range); + ntype.initfunc = file_ns::node_shader_init_map_range; node_type_storage( &ntype, "NodeMapRange", node_free_standard_storage, node_copy_standard_storage); - node_type_update(&ntype, file_ns::node_shader_update_map_range); - node_type_gpu(&ntype, file_ns::gpu_shader_map_range); + ntype.updatefunc = file_ns::node_shader_update_map_range; + ntype.gpu_fn = file_ns::gpu_shader_map_range; ntype.build_multi_function = file_ns::sh_node_map_range_build_multi_function; ntype.gather_link_search_ops = file_ns::node_map_range_gather_link_searches; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_mapping.cc b/source/blender/nodes/shader/nodes/node_shader_mapping.cc index 7824ee4861c..f9cac93544f 100644 --- a/source/blender/nodes/shader/nodes/node_shader_mapping.cc +++ b/source/blender/nodes/shader/nodes/node_shader_mapping.cc @@ -36,7 +36,7 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Vector>(N_("Vector")); } -static void node_shader_buts_mapping(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_mapping(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "vector_type", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE); } @@ -58,7 +58,7 @@ static const char *gpu_shader_get_name(int mode) static int gpu_shader_mapping(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -87,8 +87,8 @@ void register_node_type_sh_mapping() sh_node_type_base(&ntype, SH_NODE_MAPPING, "Mapping", NODE_CLASS_OP_VECTOR); ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_mapping; - node_type_gpu(&ntype, file_ns::gpu_shader_mapping); - node_type_update(&ntype, file_ns::node_shader_update_mapping); + ntype.gpu_fn = file_ns::gpu_shader_mapping; + ntype.updatefunc = file_ns::node_shader_update_mapping; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_math.cc b/source/blender/nodes/shader/nodes/node_shader_math.cc index bd83f8dac37..5fe1bb48cc2 100644 --- a/source/blender/nodes/shader/nodes/node_shader_math.cc +++ b/source/blender/nodes/shader/nodes/node_shader_math.cc @@ -82,7 +82,7 @@ static const char *gpu_shader_get_name(int mode) static int gpu_shader_math(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -190,8 +190,8 @@ void register_node_type_sh_math() sh_fn_node_type_base(&ntype, SH_NODE_MATH, "Math", NODE_CLASS_CONVERTER); ntype.declare = file_ns::sh_node_math_declare; ntype.labelfunc = node_math_label; - node_type_gpu(&ntype, file_ns::gpu_shader_math); - node_type_update(&ntype, node_math_update); + ntype.gpu_fn = file_ns::gpu_shader_math; + ntype.updatefunc = node_math_update; ntype.build_multi_function = file_ns::sh_node_math_build_multi_function; ntype.gather_link_search_ops = file_ns::sh_node_math_gather_link_searches; diff --git a/source/blender/nodes/shader/nodes/node_shader_mix.cc b/source/blender/nodes/shader/nodes/node_shader_mix.cc index f785e32832e..bc928ddb49a 100644 --- a/source/blender/nodes/shader/nodes/node_shader_mix.cc +++ b/source/blender/nodes/shader/nodes/node_shader_mix.cc @@ -23,11 +23,13 @@ static void sh_node_mix_declare(NodeDeclarationBuilder &b) { b.is_function_node(); b.add_input<decl::Float>(N_("Factor"), "Factor_Float") + .no_muted_links() .default_value(0.5f) .min(0.0f) .max(1.0f) .subtype(PROP_FACTOR); b.add_input<decl::Vector>(N_("Factor"), "Factor_Vector") + .no_muted_links() .default_value(float3(0.5f)) .subtype(PROP_FACTOR); @@ -50,7 +52,7 @@ static void sh_node_mix_declare(NodeDeclarationBuilder &b) b.add_output<decl::Color>(N_("Result"), "Result_Color"); }; -static void sh_node_mix_layout(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void sh_node_mix_layout(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { const NodeShaderMix &data = node_storage(*static_cast<const bNode *>(ptr->data)); uiItemR(layout, ptr, "data_type", 0, "", ICON_NONE); @@ -67,7 +69,7 @@ static void sh_node_mix_layout(uiLayout *layout, bContext *UNUSED(C), PointerRNA } } -static void sh_node_mix_label(const bNodeTree *UNUSED(ntree), +static void sh_node_mix_label(const bNodeTree * /*ntree*/, const bNode *node, char *label, int maxlen) @@ -121,6 +123,19 @@ static void sh_node_mix_update(bNodeTree *ntree, bNode *node) nodeSetSocketAvailability(ntree, sock_factor_vec, use_vector_factor); } +class SocketSearchOp { + public: + std::string socket_name; + int type = MA_RAMP_BLEND; + void operator()(LinkSearchOpParams ¶ms) + { + bNode &node = params.add_node("ShaderNodeMix"); + node_storage(node).data_type = SOCK_RGBA; + node_storage(node).blend_type = type; + params.update_and_connect_available_socket(node, socket_name); + } +}; + static void node_mix_gather_link_searches(GatherLinkSearchOpParams ¶ms) { const eNodeSocketDatatype sock_type = static_cast<eNodeSocketDatatype>( @@ -130,6 +145,17 @@ static void node_mix_gather_link_searches(GatherLinkSearchOpParams ¶ms) const eNodeSocketDatatype type = ELEM(sock_type, SOCK_BOOLEAN, SOCK_INT) ? SOCK_FLOAT : sock_type; + const int weight = ELEM(params.other_socket().type, SOCK_RGBA) ? 0 : -1; + const std::string socket_name = params.in_out() == SOCK_IN ? "A" : "Result"; + for (const EnumPropertyItem *item = rna_enum_ramp_blend_items; item->identifier != nullptr; + item++) { + if (item->name != nullptr && item->identifier[0] != '\0') { + params.add_item(CTX_IFACE_(BLT_I18NCONTEXT_ID_NODETREE, item->name), + SocketSearchOp{socket_name, item->value}, + weight); + } + } + if (params.in_out() == SOCK_OUT) { params.add_item(IFACE_("Result"), [type](LinkSearchOpParams ¶ms) { bNode &node = params.add_node("ShaderNodeMix"); @@ -165,7 +191,7 @@ static void node_mix_gather_link_searches(GatherLinkSearchOpParams ¶ms) } } -static void node_mix_init(bNodeTree *UNUSED(tree), bNode *node) +static void node_mix_init(bNodeTree * /*tree*/, bNode *node) { NodeShaderMix *data = MEM_cnew<NodeShaderMix>(__func__); data->data_type = SOCK_FLOAT; @@ -235,7 +261,7 @@ static const char *gpu_shader_get_name(eNodeSocketDatatype data_type, static int gpu_shader_mix(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -315,7 +341,7 @@ class MixColorFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { const VArray<float> &fac = params.readonly_single_input<float>(0, "Factor"); const VArray<ColorGeometry4f> &col1 = params.readonly_single_input<ColorGeometry4f>(1, "A"); @@ -430,9 +456,9 @@ void register_node_type_sh_mix() sh_fn_node_type_base(&ntype, SH_NODE_MIX, "Mix", NODE_CLASS_CONVERTER); ntype.declare = file_ns::sh_node_mix_declare; ntype.ui_class = file_ns::sh_node_mix_ui_class; - node_type_gpu(&ntype, file_ns::gpu_shader_mix); - node_type_update(&ntype, file_ns::sh_node_mix_update); - node_type_init(&ntype, file_ns::node_mix_init); + ntype.gpu_fn = file_ns::gpu_shader_mix; + ntype.updatefunc = file_ns::sh_node_mix_update; + ntype.initfunc = file_ns::node_mix_init; node_type_storage( &ntype, "NodeShaderMix", node_free_standard_storage, node_copy_standard_storage); ntype.build_multi_function = file_ns::sh_node_mix_build_multi_function; diff --git a/source/blender/nodes/shader/nodes/node_shader_mix_rgb.cc b/source/blender/nodes/shader/nodes/node_shader_mix_rgb.cc index 46ac8f05803..98771098f81 100644 --- a/source/blender/nodes/shader/nodes/node_shader_mix_rgb.cc +++ b/source/blender/nodes/shader/nodes/node_shader_mix_rgb.cc @@ -64,7 +64,7 @@ static const char *gpu_shader_get_name(int mode) static int gpu_shader_mix_rgb(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -111,7 +111,7 @@ class MixRGBFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { const VArray<float> &fac = params.readonly_single_input<float>(0, "Fac"); const VArray<ColorGeometry4f> &col1 = params.readonly_single_input<ColorGeometry4f>(1, @@ -150,10 +150,10 @@ void register_node_type_sh_mix_rgb() static bNodeType ntype; - sh_fn_node_type_base(&ntype, SH_NODE_MIX_RGB_LEGACY, "Mix", NODE_CLASS_OP_COLOR); + sh_fn_node_type_base(&ntype, SH_NODE_MIX_RGB_LEGACY, "Mix (Legacy)", NODE_CLASS_OP_COLOR); ntype.declare = file_ns::sh_node_mix_rgb_declare; ntype.labelfunc = node_blend_label; - node_type_gpu(&ntype, file_ns::gpu_shader_mix_rgb); + ntype.gpu_fn = file_ns::gpu_shader_mix_rgb; ntype.build_multi_function = file_ns::sh_node_mix_rgb_build_multi_function; ntype.gather_link_search_ops = nullptr; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_mix_shader.cc b/source/blender/nodes/shader/nodes/node_shader_mix_shader.cc index 7740bf9b92a..135e3582483 100644 --- a/source/blender/nodes/shader/nodes/node_shader_mix_shader.cc +++ b/source/blender/nodes/shader/nodes/node_shader_mix_shader.cc @@ -15,7 +15,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_mix_shader(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -33,7 +33,7 @@ void register_node_type_sh_mix_shader() sh_node_type_base(&ntype, SH_NODE_MIX_SHADER, "Mix Shader", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_mix_shader); + ntype.gpu_fn = file_ns::node_shader_gpu_mix_shader; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_normal.cc b/source/blender/nodes/shader/nodes/node_shader_normal.cc index f6214dd9c89..c36744524f4 100644 --- a/source/blender/nodes/shader/nodes/node_shader_normal.cc +++ b/source/blender/nodes/shader/nodes/node_shader_normal.cc @@ -26,7 +26,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int gpu_shader_normal(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -44,7 +44,7 @@ void register_node_type_sh_normal() sh_node_type_base(&ntype, SH_NODE_NORMAL, "Normal", NODE_CLASS_OP_VECTOR); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_normal); + ntype.gpu_fn = file_ns::gpu_shader_normal; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_normal_map.cc b/source/blender/nodes/shader/nodes/node_shader_normal_map.cc index d51d8def945..4338cfd9457 100644 --- a/source/blender/nodes/shader/nodes/node_shader_normal_map.cc +++ b/source/blender/nodes/shader/nodes/node_shader_normal_map.cc @@ -34,7 +34,7 @@ static void node_shader_buts_normal_map(uiLayout *layout, bContext *C, PointerRN } } -static void node_shader_init_normal_map(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_normal_map(bNodeTree * /*ntree*/, bNode *node) { NodeShaderNormalMap *attr = MEM_cnew<NodeShaderNormalMap>("NodeShaderNormalMap"); node->storage = attr; @@ -42,7 +42,7 @@ static void node_shader_init_normal_map(bNodeTree *UNUSED(ntree), bNode *node) static int gpu_shader_normal_map(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -118,10 +118,10 @@ void register_node_type_sh_normal_map() ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_normal_map; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_init(&ntype, file_ns::node_shader_init_normal_map); + ntype.initfunc = file_ns::node_shader_init_normal_map; node_type_storage( &ntype, "NodeShaderNormalMap", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::gpu_shader_normal_map); + ntype.gpu_fn = file_ns::gpu_shader_normal_map; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_object_info.cc b/source/blender/nodes/shader/nodes/node_shader_object_info.cc index 8985ab6d0e9..daa40d8dc63 100644 --- a/source/blender/nodes/shader/nodes/node_shader_object_info.cc +++ b/source/blender/nodes/shader/nodes/node_shader_object_info.cc @@ -17,7 +17,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_object_info(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -37,7 +37,7 @@ void register_node_type_sh_object_info() sh_node_type_base(&ntype, SH_NODE_OBJECT_INFO, "Object Info", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_object_info); + ntype.gpu_fn = file_ns::node_shader_gpu_object_info; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_output_aov.cc b/source/blender/nodes/shader/nodes/node_shader_output_aov.cc index 78dabc5c1c2..b668b5313ba 100644 --- a/source/blender/nodes/shader/nodes/node_shader_output_aov.cc +++ b/source/blender/nodes/shader/nodes/node_shader_output_aov.cc @@ -16,12 +16,12 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_input<decl::Float>(N_("Value")).default_value(0.0f).min(0.0f).max(1.0f); } -static void node_shader_buts_output_aov(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_output_aov(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "name", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE); } -static void node_shader_init_output_aov(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_output_aov(bNodeTree * /*ntree*/, bNode *node) { NodeShaderOutputAOV *aov = MEM_cnew<NodeShaderOutputAOV>("NodeShaderOutputAOV"); node->storage = aov; @@ -29,7 +29,7 @@ static void node_shader_init_output_aov(bNodeTree *UNUSED(ntree), bNode *node) static int node_shader_gpu_output_aov(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -60,10 +60,10 @@ void register_node_type_sh_output_aov() sh_node_type_base(&ntype, SH_NODE_OUTPUT_AOV, "AOV Output", NODE_CLASS_OUTPUT); ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_output_aov; - node_type_init(&ntype, file_ns::node_shader_init_output_aov); + ntype.initfunc = file_ns::node_shader_init_output_aov; node_type_storage( &ntype, "NodeShaderOutputAOV", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_output_aov); + ntype.gpu_fn = file_ns::node_shader_gpu_output_aov; ntype.no_muting = true; diff --git a/source/blender/nodes/shader/nodes/node_shader_output_light.cc b/source/blender/nodes/shader/nodes/node_shader_output_light.cc index 3707806841e..848e6c92e17 100644 --- a/source/blender/nodes/shader/nodes/node_shader_output_light.cc +++ b/source/blender/nodes/shader/nodes/node_shader_output_light.cc @@ -11,10 +11,10 @@ static void node_declare(NodeDeclarationBuilder &b) } static int node_shader_gpu_output_light(GPUMaterial *mat, - bNode *UNUSED(node), - bNodeExecData *UNUSED(execdata), + bNode * /*node*/, + bNodeExecData * /*execdata*/, GPUNodeStack *in, - GPUNodeStack *UNUSED(out)) + GPUNodeStack * /*out*/) { GPUNodeLink *outlink_surface; /* Passthrough node in order to do the right socket conversions. */ @@ -37,7 +37,7 @@ void register_node_type_sh_output_light() sh_node_type_base(&ntype, SH_NODE_OUTPUT_LIGHT, "Light Output", NODE_CLASS_OUTPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_output_light); + ntype.gpu_fn = file_ns::node_shader_gpu_output_light; ntype.no_muting = true; diff --git a/source/blender/nodes/shader/nodes/node_shader_output_linestyle.cc b/source/blender/nodes/shader/nodes/node_shader_output_linestyle.cc index b387aebf5e3..47909985374 100644 --- a/source/blender/nodes/shader/nodes/node_shader_output_linestyle.cc +++ b/source/blender/nodes/shader/nodes/node_shader_output_linestyle.cc @@ -28,7 +28,7 @@ static void node_declare(NodeDeclarationBuilder &b) .subtype(PROP_FACTOR); } -static void node_buts_output_linestyle(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_buts_output_linestyle(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiLayout *row, *col; diff --git a/source/blender/nodes/shader/nodes/node_shader_output_material.cc b/source/blender/nodes/shader/nodes/node_shader_output_material.cc index 133457c167f..ff2628a891b 100644 --- a/source/blender/nodes/shader/nodes/node_shader_output_material.cc +++ b/source/blender/nodes/shader/nodes/node_shader_output_material.cc @@ -16,10 +16,10 @@ static void node_declare(NodeDeclarationBuilder &b) } static int node_shader_gpu_output_material(GPUMaterial *mat, - bNode *UNUSED(node), - bNodeExecData *UNUSED(execdata), + bNode * /*node*/, + bNodeExecData * /*execdata*/, GPUNodeStack *in, - GPUNodeStack *UNUSED(out)) + GPUNodeStack * /*out*/) { GPUNodeLink *outlink_surface, *outlink_volume, *outlink_displacement, *outlink_thickness; /* Passthrough node in order to do the right socket conversions (important for displacement). */ @@ -53,7 +53,7 @@ void register_node_type_sh_output_material() sh_node_type_base(&ntype, SH_NODE_OUTPUT_MATERIAL, "Material Output", NODE_CLASS_OUTPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_output_material); + ntype.gpu_fn = file_ns::node_shader_gpu_output_material; ntype.no_muting = true; diff --git a/source/blender/nodes/shader/nodes/node_shader_output_world.cc b/source/blender/nodes/shader/nodes/node_shader_output_world.cc index b0cf4c80bc5..2d75faa9e80 100644 --- a/source/blender/nodes/shader/nodes/node_shader_output_world.cc +++ b/source/blender/nodes/shader/nodes/node_shader_output_world.cc @@ -12,10 +12,10 @@ static void node_declare(NodeDeclarationBuilder &b) } static int node_shader_gpu_output_world(GPUMaterial *mat, - bNode *UNUSED(node), - bNodeExecData *UNUSED(execdata), + bNode * /*node*/, + bNodeExecData * /*execdata*/, GPUNodeStack *in, - GPUNodeStack *UNUSED(out)) + GPUNodeStack * /*out*/) { GPUNodeLink *outlink_surface, *outlink_volume; if (in[0].link) { @@ -40,7 +40,7 @@ void register_node_type_sh_output_world() sh_node_type_base(&ntype, SH_NODE_OUTPUT_WORLD, "World Output", NODE_CLASS_OUTPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_output_world); + ntype.gpu_fn = file_ns::node_shader_gpu_output_world; ntype.no_muting = true; diff --git a/source/blender/nodes/shader/nodes/node_shader_particle_info.cc b/source/blender/nodes/shader/nodes/node_shader_particle_info.cc index 71adbd5e5c4..c86bb5866dd 100644 --- a/source/blender/nodes/shader/nodes/node_shader_particle_info.cc +++ b/source/blender/nodes/shader/nodes/node_shader_particle_info.cc @@ -24,7 +24,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int gpu_shader_particle_info(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -44,7 +44,7 @@ void register_node_type_sh_particle_info() sh_node_type_base(&ntype, SH_NODE_PARTICLE_INFO, "Particle Info", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_particle_info); + ntype.gpu_fn = file_ns::gpu_shader_particle_info; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_point_info.cc b/source/blender/nodes/shader/nodes/node_shader_point_info.cc index 1cddf2acc8a..fffa3abad03 100644 --- a/source/blender/nodes/shader/nodes/node_shader_point_info.cc +++ b/source/blender/nodes/shader/nodes/node_shader_point_info.cc @@ -14,7 +14,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_point_info(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -32,7 +32,7 @@ void register_node_type_sh_point_info() sh_node_type_base(&ntype, SH_NODE_POINT_INFO, "Point Info", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_point_info); + ntype.gpu_fn = file_ns::node_shader_gpu_point_info; 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 3d28f5278a2..d70df4a8e25 100644 --- a/source/blender/nodes/shader/nodes/node_shader_rgb.cc +++ b/source/blender/nodes/shader/nodes/node_shader_rgb.cc @@ -16,7 +16,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int gpu_shader_rgb(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack * /*in*/, GPUNodeStack *out) { @@ -35,7 +35,7 @@ void register_node_type_sh_rgb() sh_node_type_base(&ntype, SH_NODE_RGB, "RGB", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_rgb); + ntype.gpu_fn = file_ns::gpu_shader_rgb; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_rgb_to_bw.cc b/source/blender/nodes/shader/nodes/node_shader_rgb_to_bw.cc index 7d738cdd719..1e663d1b86f 100644 --- a/source/blender/nodes/shader/nodes/node_shader_rgb_to_bw.cc +++ b/source/blender/nodes/shader/nodes/node_shader_rgb_to_bw.cc @@ -19,7 +19,7 @@ static void sh_node_rgbtobw_declare(NodeDeclarationBuilder &b) static int gpu_shader_rgbtobw(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -36,7 +36,7 @@ void register_node_type_sh_rgbtobw() sh_node_type_base(&ntype, SH_NODE_RGBTOBW, "RGB to BW", NODE_CLASS_CONVERTER); ntype.declare = file_ns::sh_node_rgbtobw_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_rgbtobw); + ntype.gpu_fn = file_ns::gpu_shader_rgbtobw; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_script.cc b/source/blender/nodes/shader/nodes/node_shader_script.cc index 4d3d2af6aa6..213de85cb15 100644 --- a/source/blender/nodes/shader/nodes/node_shader_script.cc +++ b/source/blender/nodes/shader/nodes/node_shader_script.cc @@ -12,7 +12,7 @@ namespace blender::nodes::node_shader_script_cc { -static void node_shader_buts_script(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_script(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiLayout *row; @@ -44,7 +44,7 @@ static void node_shader_buts_script_ex(uiLayout *layout, bContext *C, PointerRNA #endif } -static void init(bNodeTree *UNUSED(ntree), bNode *node) +static void init(bNodeTree * /*ntree*/, bNode *node) { NodeShaderScript *nss = MEM_cnew<NodeShaderScript>("shader script node"); node->storage = nss; @@ -63,9 +63,7 @@ static void node_free_script(bNode *node) } } -static void node_copy_script(bNodeTree *UNUSED(dest_ntree), - bNode *dest_node, - const bNode *src_node) +static void node_copy_script(bNodeTree * /*dst_ntree*/, bNode *dest_node, const bNode *src_node) { NodeShaderScript *src_nss = static_cast<NodeShaderScript *>(src_node->storage); NodeShaderScript *dest_nss = static_cast<NodeShaderScript *>(MEM_dupallocN(src_nss)); @@ -88,7 +86,7 @@ void register_node_type_sh_script() sh_node_type_base(&ntype, SH_NODE_SCRIPT, "Script", NODE_CLASS_SCRIPT); ntype.draw_buttons = file_ns::node_shader_buts_script; ntype.draw_buttons_ex = file_ns::node_shader_buts_script_ex; - node_type_init(&ntype, file_ns::init); + ntype.initfunc = file_ns::init; node_type_storage( &ntype, "NodeShaderScript", file_ns::node_free_script, file_ns::node_copy_script); diff --git a/source/blender/nodes/shader/nodes/node_shader_sepcomb_color.cc b/source/blender/nodes/shader/nodes/node_shader_sepcomb_color.cc index 8e378ebabce..94e5f19b840 100644 --- a/source/blender/nodes/shader/nodes/node_shader_sepcomb_color.cc +++ b/source/blender/nodes/shader/nodes/node_shader_sepcomb_color.cc @@ -10,7 +10,7 @@ #include "UI_interface.h" #include "UI_resources.h" -static void node_combsep_color_init(bNodeTree *UNUSED(tree), bNode *node) +static void node_combsep_color_init(bNodeTree * /*tree*/, bNode *node) { NodeCombSepColor *data = MEM_cnew<NodeCombSepColor>(__func__); data->mode = NODE_COMBSEP_COLOR_RGB; @@ -31,7 +31,7 @@ static void sh_node_sepcolor_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("Blue")); } -static void node_sepcolor_update(bNodeTree *UNUSED(ntree), bNode *node) +static void node_sepcolor_update(bNodeTree * /*ntree*/, bNode *node) { const NodeCombSepColor &storage = node_storage(*node); node_combsep_color_label(&node->outputs, (NodeCombSepColorMode)storage.mode); @@ -53,7 +53,7 @@ static const char *gpu_shader_get_name(int mode) static int gpu_shader_sepcolor(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -76,11 +76,11 @@ void register_node_type_sh_sepcolor() sh_node_type_base(&ntype, SH_NODE_SEPARATE_COLOR, "Separate Color", NODE_CLASS_CONVERTER); ntype.declare = file_ns::sh_node_sepcolor_declare; - node_type_update(&ntype, file_ns::node_sepcolor_update); - node_type_init(&ntype, node_combsep_color_init); + ntype.updatefunc = file_ns::node_sepcolor_update; + ntype.initfunc = node_combsep_color_init; node_type_storage( &ntype, "NodeCombSepColor", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::gpu_shader_sepcolor); + ntype.gpu_fn = file_ns::gpu_shader_sepcolor; nodeRegisterType(&ntype); } @@ -107,7 +107,7 @@ static void sh_node_combcolor_declare(NodeDeclarationBuilder &b) b.add_output<decl::Color>(N_("Color")); } -static void node_combcolor_update(bNodeTree *UNUSED(ntree), bNode *node) +static void node_combcolor_update(bNodeTree * /*ntree*/, bNode *node) { const NodeCombSepColor &storage = node_storage(*node); node_combsep_color_label(&node->inputs, (NodeCombSepColorMode)storage.mode); @@ -129,7 +129,7 @@ static const char *gpu_shader_get_name(int mode) static int gpu_shader_combcolor(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -152,11 +152,11 @@ void register_node_type_sh_combcolor() sh_node_type_base(&ntype, SH_NODE_COMBINE_COLOR, "Combine Color", NODE_CLASS_CONVERTER); ntype.declare = file_ns::sh_node_combcolor_declare; - node_type_update(&ntype, file_ns::node_combcolor_update); - node_type_init(&ntype, node_combsep_color_init); + ntype.updatefunc = file_ns::node_combcolor_update; + ntype.initfunc = node_combsep_color_init; node_type_storage( &ntype, "NodeCombSepColor", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::gpu_shader_combcolor); + ntype.gpu_fn = file_ns::gpu_shader_combcolor; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_sepcomb_hsv.cc b/source/blender/nodes/shader/nodes/node_shader_sepcomb_hsv.cc index 1c02c5ba074..66ff5f82944 100644 --- a/source/blender/nodes/shader/nodes/node_shader_sepcomb_hsv.cc +++ b/source/blender/nodes/shader/nodes/node_shader_sepcomb_hsv.cc @@ -21,7 +21,7 @@ static void node_declare_sephsv(NodeDeclarationBuilder &b) static int gpu_shader_sephsv(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -36,9 +36,9 @@ void register_node_type_sh_sephsv() static bNodeType ntype; - sh_node_type_base(&ntype, SH_NODE_SEPHSV_LEGACY, "Separate HSV", NODE_CLASS_CONVERTER); + sh_node_type_base(&ntype, SH_NODE_SEPHSV_LEGACY, "Separate HSV (Legacy)", NODE_CLASS_CONVERTER); ntype.declare = file_ns::node_declare_sephsv; - node_type_gpu(&ntype, file_ns::gpu_shader_sephsv); + ntype.gpu_fn = file_ns::gpu_shader_sephsv; ntype.gather_link_search_ops = nullptr; nodeRegisterType(&ntype); @@ -58,7 +58,7 @@ static void node_declare_combhsv(NodeDeclarationBuilder &b) static int gpu_shader_combhsv(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -73,9 +73,9 @@ void register_node_type_sh_combhsv() static bNodeType ntype; - sh_node_type_base(&ntype, SH_NODE_COMBHSV_LEGACY, "Combine HSV", NODE_CLASS_CONVERTER); + sh_node_type_base(&ntype, SH_NODE_COMBHSV_LEGACY, "Combine HSV (Legacy)", NODE_CLASS_CONVERTER); ntype.declare = file_ns::node_declare_combhsv; - node_type_gpu(&ntype, file_ns::gpu_shader_combhsv); + ntype.gpu_fn = file_ns::gpu_shader_combhsv; ntype.gather_link_search_ops = nullptr; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_sepcomb_rgb.cc b/source/blender/nodes/shader/nodes/node_shader_sepcomb_rgb.cc index 3fe76b05b5d..28c4eef823f 100644 --- a/source/blender/nodes/shader/nodes/node_shader_sepcomb_rgb.cc +++ b/source/blender/nodes/shader/nodes/node_shader_sepcomb_rgb.cc @@ -20,7 +20,7 @@ static void sh_node_seprgb_declare(NodeDeclarationBuilder &b) static int gpu_shader_seprgb(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -45,7 +45,7 @@ class SeparateRGBFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { const VArray<ColorGeometry4f> &colors = params.readonly_single_input<ColorGeometry4f>(0, "Color"); @@ -76,9 +76,10 @@ void register_node_type_sh_seprgb() static bNodeType ntype; - sh_fn_node_type_base(&ntype, SH_NODE_SEPRGB_LEGACY, "Separate RGB", NODE_CLASS_CONVERTER); + sh_fn_node_type_base( + &ntype, SH_NODE_SEPRGB_LEGACY, "Separate RGB (Legacy)", NODE_CLASS_CONVERTER); ntype.declare = file_ns::sh_node_seprgb_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_seprgb); + ntype.gpu_fn = file_ns::gpu_shader_seprgb; ntype.build_multi_function = file_ns::sh_node_seprgb_build_multi_function; ntype.gather_link_search_ops = nullptr; @@ -98,7 +99,7 @@ static void sh_node_combrgb_declare(NodeDeclarationBuilder &b) static int gpu_shader_combrgb(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -120,9 +121,10 @@ void register_node_type_sh_combrgb() static bNodeType ntype; - sh_fn_node_type_base(&ntype, SH_NODE_COMBRGB_LEGACY, "Combine RGB", NODE_CLASS_CONVERTER); + sh_fn_node_type_base( + &ntype, SH_NODE_COMBRGB_LEGACY, "Combine RGB (Legacy)", NODE_CLASS_CONVERTER); ntype.declare = file_ns::sh_node_combrgb_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_combrgb); + ntype.gpu_fn = file_ns::gpu_shader_combrgb; ntype.build_multi_function = file_ns::sh_node_combrgb_build_multi_function; ntype.gather_link_search_ops = nullptr; diff --git a/source/blender/nodes/shader/nodes/node_shader_sepcomb_xyz.cc b/source/blender/nodes/shader/nodes/node_shader_sepcomb_xyz.cc index d4413036555..131ae16ef1b 100644 --- a/source/blender/nodes/shader/nodes/node_shader_sepcomb_xyz.cc +++ b/source/blender/nodes/shader/nodes/node_shader_sepcomb_xyz.cc @@ -20,7 +20,7 @@ static void sh_node_sepxyz_declare(NodeDeclarationBuilder &b) static int gpu_shader_sepxyz(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -45,7 +45,7 @@ class MF_SeparateXYZ : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { const VArray<float3> &vectors = params.readonly_single_input<float3>(0, "XYZ"); MutableSpan<float> xs = params.uninitialized_single_output_if_required<float>(1, "X"); @@ -97,7 +97,7 @@ void register_node_type_sh_sepxyz() sh_fn_node_type_base(&ntype, SH_NODE_SEPXYZ, "Separate XYZ", NODE_CLASS_CONVERTER); ntype.declare = file_ns::sh_node_sepxyz_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_sepxyz); + ntype.gpu_fn = file_ns::gpu_shader_sepxyz; ntype.build_multi_function = file_ns::sh_node_sepxyz_build_multi_function; nodeRegisterType(&ntype); @@ -116,7 +116,7 @@ static void sh_node_combxyz_declare(NodeDeclarationBuilder &b) static int gpu_shader_combxyz(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -142,7 +142,7 @@ void register_node_type_sh_combxyz() sh_fn_node_type_base(&ntype, SH_NODE_COMBXYZ, "Combine XYZ", NODE_CLASS_CONVERTER); ntype.declare = file_ns::sh_node_combxyz_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_combxyz); + ntype.gpu_fn = file_ns::gpu_shader_combxyz; ntype.build_multi_function = file_ns::sh_node_combxyz_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_shader_to_rgb.cc b/source/blender/nodes/shader/nodes/node_shader_shader_to_rgb.cc index 0404158a803..38ae1f979a8 100644 --- a/source/blender/nodes/shader/nodes/node_shader_shader_to_rgb.cc +++ b/source/blender/nodes/shader/nodes/node_shader_shader_to_rgb.cc @@ -14,7 +14,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_shadertorgb(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -34,7 +34,7 @@ void register_node_type_sh_shadertorgb() sh_node_type_base(&ntype, SH_NODE_SHADERTORGB, "Shader to RGB", NODE_CLASS_CONVERTER); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_shadertorgb); + ntype.gpu_fn = file_ns::node_shader_gpu_shadertorgb; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_squeeze.cc b/source/blender/nodes/shader/nodes/node_shader_squeeze.cc index c22420d8d47..31965c5e13e 100644 --- a/source/blender/nodes/shader/nodes/node_shader_squeeze.cc +++ b/source/blender/nodes/shader/nodes/node_shader_squeeze.cc @@ -19,7 +19,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int gpu_shader_squeeze(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -36,7 +36,7 @@ void register_node_type_sh_squeeze() sh_node_type_base(&ntype, SH_NODE_SQUEEZE, "Squeeze Value", NODE_CLASS_CONVERTER); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_squeeze); + ntype.gpu_fn = file_ns::gpu_shader_squeeze; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_subsurface_scattering.cc b/source/blender/nodes/shader/nodes/node_shader_subsurface_scattering.cc index e3ff4c28604..bcf859251e3 100644 --- a/source/blender/nodes/shader/nodes/node_shader_subsurface_scattering.cc +++ b/source/blender/nodes/shader/nodes/node_shader_subsurface_scattering.cc @@ -29,12 +29,12 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Shader>(N_("BSSRDF")); } -static void node_shader_buts_subsurface(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_subsurface(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "falloff", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } -static void node_shader_init_subsurface_scattering(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_subsurface_scattering(bNodeTree * /*ntree*/, bNode *node) { node->custom1 = SHD_SUBSURFACE_RANDOM_WALK; node->custom2 = true; @@ -42,7 +42,7 @@ static void node_shader_init_subsurface_scattering(bNodeTree *UNUSED(ntree), bNo static int node_shader_gpu_subsurface_scattering(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -87,9 +87,9 @@ void register_node_type_sh_subsurface_scattering() ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_subsurface; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_init(&ntype, file_ns::node_shader_init_subsurface_scattering); - node_type_gpu(&ntype, file_ns::node_shader_gpu_subsurface_scattering); - node_type_update(&ntype, file_ns::node_shader_update_subsurface_scattering); + ntype.initfunc = file_ns::node_shader_init_subsurface_scattering; + ntype.gpu_fn = file_ns::node_shader_gpu_subsurface_scattering; + ntype.updatefunc = file_ns::node_shader_update_subsurface_scattering; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_tangent.cc b/source/blender/nodes/shader/nodes/node_shader_tangent.cc index 8e27ebed21b..9b09eb09bba 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tangent.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tangent.cc @@ -41,7 +41,7 @@ static void node_shader_buts_tangent(uiLayout *layout, bContext *C, PointerRNA * } } -static void node_shader_init_tangent(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tangent(bNodeTree * /*ntree*/, bNode *node) { NodeShaderTangent *attr = MEM_cnew<NodeShaderTangent>("NodeShaderTangent"); attr->axis = SHD_TANGENT_AXIS_Z; @@ -50,7 +50,7 @@ static void node_shader_init_tangent(bNodeTree *UNUSED(ntree), bNode *node) static int node_shader_gpu_tangent(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -89,8 +89,8 @@ void register_node_type_sh_tangent() ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_tangent; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_init(&ntype, file_ns::node_shader_init_tangent); - node_type_gpu(&ntype, file_ns::node_shader_gpu_tangent); + ntype.initfunc = file_ns::node_shader_init_tangent; + ntype.gpu_fn = file_ns::node_shader_gpu_tangent; node_type_storage( &ntype, "NodeShaderTangent", node_free_standard_storage, node_copy_standard_storage); diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_brick.cc b/source/blender/nodes/shader/nodes/node_shader_tex_brick.cc index a1c51a440d0..aaae1369d79 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_brick.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_brick.cc @@ -13,7 +13,10 @@ namespace blender::nodes::node_shader_tex_brick_cc { static void sh_node_tex_brick_declare(NodeDeclarationBuilder &b) { b.is_function_node(); - b.add_input<decl::Vector>(N_("Vector")).min(-10000.0f).max(10000.0f).implicit_field(); + b.add_input<decl::Vector>(N_("Vector")) + .min(-10000.0f) + .max(10000.0f) + .implicit_field(implicit_field_inputs::position); b.add_input<decl::Color>(N_("Color1")).default_value({0.8f, 0.8f, 0.8f, 1.0f}); b.add_input<decl::Color>(N_("Color2")).default_value({0.2f, 0.2f, 0.2f, 1.0f}); b.add_input<decl::Color>(N_("Mortar")).default_value({0.0f, 0.0f, 0.0f, 1.0f}).no_muted_links(); @@ -43,7 +46,7 @@ static void sh_node_tex_brick_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("Fac")); } -static void node_shader_buts_tex_brick(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_tex_brick(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiLayout *col; @@ -63,7 +66,7 @@ static void node_shader_buts_tex_brick(uiLayout *layout, bContext *UNUSED(C), Po col, ptr, "squash_frequency", UI_ITEM_R_SPLIT_EMPTY_NAME, IFACE_("Frequency"), ICON_NONE); } -static void node_shader_init_tex_brick(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_brick(bNodeTree * /*ntree*/, bNode *node) { NodeTexBrick *tex = MEM_cnew<NodeTexBrick>(__func__); BKE_texture_mapping_default(&tex->base.tex_mapping, TEXMAP_TYPE_POINT); @@ -85,7 +88,7 @@ static void node_shader_init_tex_brick(bNodeTree *UNUSED(ntree), bNode *node) static int node_shader_gpu_tex_brick(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -147,7 +150,7 @@ class BrickFunction : public fn::MultiFunction { n = (n + 1013) & 0x7fffffff; n = (n >> 13) ^ n; const uint nn = (n * (n * n * 60493 + 19990303) + 1376312589) & 0x7fffffff; - return 0.5f * ((float)nn / 1073741824.0f); + return 0.5f * (float(nn) / 1073741824.0f); } static float smoothstepf(const float f) @@ -169,14 +172,14 @@ class BrickFunction : public fn::MultiFunction { { float offset = 0.0f; - const int rownum = (int)floorf(p.y / row_height); + const int rownum = int(floorf(p.y / row_height)); if (offset_frequency && squash_frequency) { brick_width *= (rownum % squash_frequency) ? 1.0f : squash_amount; offset = (rownum % offset_frequency) ? 0.0f : (brick_width * offset_amount); } - const int bricknum = (int)floorf((p.x + offset) / brick_width); + const int bricknum = int(floorf((p.x + offset) / brick_width)); const float x = (p.x + offset) - brick_width * bricknum; const float y = p.y - row_height * rownum; @@ -200,7 +203,7 @@ class BrickFunction : public fn::MultiFunction { return float2(tint, mortar); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { const VArray<float3> &vector = params.readonly_single_input<float3>(0, "Vector"); const VArray<ColorGeometry4f> &color1_values = params.readonly_single_input<ColorGeometry4f>( @@ -280,10 +283,10 @@ void register_node_type_sh_tex_brick() ntype.declare = file_ns::sh_node_tex_brick_declare; ntype.draw_buttons = file_ns::node_shader_buts_tex_brick; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_init(&ntype, file_ns::node_shader_init_tex_brick); + ntype.initfunc = file_ns::node_shader_init_tex_brick; node_type_storage( &ntype, "NodeTexBrick", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_tex_brick); + ntype.gpu_fn = file_ns::node_shader_gpu_tex_brick; ntype.build_multi_function = file_ns::sh_node_brick_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_checker.cc b/source/blender/nodes/shader/nodes/node_shader_tex_checker.cc index b0e5639c893..bef3eb990eb 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_checker.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_checker.cc @@ -8,7 +8,10 @@ namespace blender::nodes::node_shader_tex_checker_cc { static void sh_node_tex_checker_declare(NodeDeclarationBuilder &b) { b.is_function_node(); - b.add_input<decl::Vector>(N_("Vector")).min(-10000.0f).max(10000.0f).implicit_field(); + b.add_input<decl::Vector>(N_("Vector")) + .min(-10000.0f) + .max(10000.0f) + .implicit_field(implicit_field_inputs::position); b.add_input<decl::Color>(N_("Color1")).default_value({0.8f, 0.8f, 0.8f, 1.0f}); b.add_input<decl::Color>(N_("Color2")).default_value({0.2f, 0.2f, 0.2f, 1.0f}); b.add_input<decl::Float>(N_("Scale")) @@ -20,7 +23,7 @@ static void sh_node_tex_checker_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("Fac")); } -static void node_shader_init_tex_checker(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_checker(bNodeTree * /*ntree*/, bNode *node) { NodeTexChecker *tex = MEM_cnew<NodeTexChecker>(__func__); BKE_texture_mapping_default(&tex->base.tex_mapping, TEXMAP_TYPE_POINT); @@ -31,7 +34,7 @@ static void node_shader_init_tex_checker(bNodeTree *UNUSED(ntree), bNode *node) static int node_shader_gpu_tex_checker(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -61,7 +64,7 @@ class NodeTexChecker : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { const VArray<float3> &vector = params.readonly_single_input<float3>(0, "Vector"); const VArray<ColorGeometry4f> &color1 = params.readonly_single_input<ColorGeometry4f>( @@ -77,9 +80,9 @@ class NodeTexChecker : public fn::MultiFunction { /* Avoid precision issues on unit coordinates. */ const float3 p = (vector[i] * scale[i] + 0.000001f) * 0.999999f; - const int xi = abs((int)(floorf(p.x))); - const int yi = abs((int)(floorf(p.y))); - const int zi = abs((int)(floorf(p.z))); + const int xi = abs(int(floorf(p.x))); + const int yi = abs(int(floorf(p.y))); + const int zi = abs(int(floorf(p.z))); r_fac[i] = ((xi % 2 == yi % 2) == (zi % 2)) ? 1.0f : 0.0f; } @@ -108,10 +111,10 @@ void register_node_type_sh_tex_checker() sh_fn_node_type_base(&ntype, SH_NODE_TEX_CHECKER, "Checker Texture", NODE_CLASS_TEXTURE); ntype.declare = file_ns::sh_node_tex_checker_declare; - node_type_init(&ntype, file_ns::node_shader_init_tex_checker); + ntype.initfunc = file_ns::node_shader_init_tex_checker; node_type_storage( &ntype, "NodeTexChecker", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_tex_checker); + ntype.gpu_fn = file_ns::node_shader_gpu_tex_checker; ntype.build_multi_function = file_ns::sh_node_tex_checker_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_coord.cc b/source/blender/nodes/shader/nodes/node_shader_tex_coord.cc index 9727a6089a6..a295bda9d07 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_coord.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_coord.cc @@ -21,7 +21,7 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Vector>(N_("Reflection")); } -static void node_shader_buts_tex_coord(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_tex_coord(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "object", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, 0); uiItemR(layout, ptr, "from_instancer", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, 0); @@ -29,7 +29,7 @@ static void node_shader_buts_tex_coord(uiLayout *layout, bContext *UNUSED(C), Po static int node_shader_gpu_tex_coord(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -38,7 +38,7 @@ static int node_shader_gpu_tex_coord(GPUMaterial *mat, /* Use special matrix to let the shader branch to using the render object's matrix. */ float dummy_matrix[4][4]; dummy_matrix[3][3] = 0.0f; - GPUNodeLink *inv_obmat = (ob != nullptr) ? GPU_uniform(&ob->imat[0][0]) : + GPUNodeLink *inv_obmat = (ob != nullptr) ? GPU_uniform(&ob->world_to_object[0][0]) : GPU_uniform(&dummy_matrix[0][0]); /* Optimization: don't request orco if not needed. */ @@ -82,7 +82,7 @@ void register_node_type_sh_tex_coord() sh_node_type_base(&ntype, SH_NODE_TEX_COORD, "Texture Coordinate", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_tex_coord; - node_type_gpu(&ntype, file_ns::node_shader_gpu_tex_coord); + ntype.gpu_fn = file_ns::node_shader_gpu_tex_coord; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_environment.cc b/source/blender/nodes/shader/nodes/node_shader_tex_environment.cc index 2739a75ed21..60059a8f1c5 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_environment.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_environment.cc @@ -11,7 +11,7 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Color>(N_("Color")).no_muted_links(); } -static void node_shader_init_tex_environment(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_environment(bNodeTree * /*ntree*/, bNode *node) { NodeTexEnvironment *tex = MEM_cnew<NodeTexEnvironment>("NodeTexEnvironment"); BKE_texture_mapping_default(&tex->base.tex_mapping, TEXMAP_TYPE_POINT); @@ -24,7 +24,7 @@ static void node_shader_init_tex_environment(bNodeTree *UNUSED(ntree), bNode *no static int node_shader_gpu_tex_environment(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -125,10 +125,10 @@ void register_node_type_sh_tex_environment() sh_node_type_base(&ntype, SH_NODE_TEX_ENVIRONMENT, "Environment Texture", NODE_CLASS_TEXTURE); ntype.declare = file_ns::node_declare; - node_type_init(&ntype, file_ns::node_shader_init_tex_environment); + ntype.initfunc = file_ns::node_shader_init_tex_environment; node_type_storage( &ntype, "NodeTexEnvironment", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_tex_environment); + ntype.gpu_fn = file_ns::node_shader_gpu_tex_environment; ntype.labelfunc = node_image_label; node_type_size_preset(&ntype, NODE_SIZE_LARGE); diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_gradient.cc b/source/blender/nodes/shader/nodes/node_shader_tex_gradient.cc index 37c72ec1f17..f7bff442420 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_gradient.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_gradient.cc @@ -11,17 +11,19 @@ namespace blender::nodes::node_shader_tex_gradient_cc { static void sh_node_tex_gradient_declare(NodeDeclarationBuilder &b) { b.is_function_node(); - b.add_input<decl::Vector>(N_("Vector")).hide_value().implicit_field(); + b.add_input<decl::Vector>(N_("Vector")) + .hide_value() + .implicit_field(implicit_field_inputs::position); b.add_output<decl::Color>(N_("Color")).no_muted_links(); b.add_output<decl::Float>(N_("Fac")).no_muted_links(); } -static void node_shader_buts_tex_gradient(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_tex_gradient(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "gradient_type", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } -static void node_shader_init_tex_gradient(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_gradient(bNodeTree * /*ntree*/, bNode *node) { NodeTexGradient *tex = MEM_cnew<NodeTexGradient>(__func__); BKE_texture_mapping_default(&tex->base.tex_mapping, TEXMAP_TYPE_POINT); @@ -33,7 +35,7 @@ static void node_shader_init_tex_gradient(bNodeTree *UNUSED(ntree), bNode *node) static int node_shader_gpu_tex_gradient(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -65,7 +67,7 @@ class GradientFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { const VArray<float3> &vector = params.readonly_single_input<float3>(0, "Vector"); @@ -155,10 +157,10 @@ void register_node_type_sh_tex_gradient() sh_fn_node_type_base(&ntype, SH_NODE_TEX_GRADIENT, "Gradient Texture", NODE_CLASS_TEXTURE); ntype.declare = file_ns::sh_node_tex_gradient_declare; ntype.draw_buttons = file_ns::node_shader_buts_tex_gradient; - node_type_init(&ntype, file_ns::node_shader_init_tex_gradient); + ntype.initfunc = file_ns::node_shader_init_tex_gradient; node_type_storage( &ntype, "NodeTexGradient", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_tex_gradient); + ntype.gpu_fn = file_ns::node_shader_gpu_tex_gradient; ntype.build_multi_function = file_ns::sh_node_gradient_tex_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_image.cc b/source/blender/nodes/shader/nodes/node_shader_tex_image.cc index c9588949761..9f4f885fee1 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_image.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_image.cc @@ -8,12 +8,12 @@ namespace blender::nodes::node_shader_tex_image_cc { static void sh_node_tex_image_declare(NodeDeclarationBuilder &b) { b.is_function_node(); - b.add_input<decl::Vector>(N_("Vector")).implicit_field(); + b.add_input<decl::Vector>(N_("Vector")).implicit_field(implicit_field_inputs::position); b.add_output<decl::Color>(N_("Color")).no_muted_links(); b.add_output<decl::Float>(N_("Alpha")).no_muted_links(); } -static void node_shader_init_tex_image(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_image(bNodeTree * /*ntree*/, bNode *node) { NodeTexImage *tex = MEM_cnew<NodeTexImage>(__func__); BKE_texture_mapping_default(&tex->base.tex_mapping, TEXMAP_TYPE_POINT); @@ -25,7 +25,7 @@ static void node_shader_init_tex_image(bNodeTree *UNUSED(ntree), bNode *node) static int node_shader_gpu_tex_image(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -163,10 +163,10 @@ void register_node_type_sh_tex_image() sh_node_type_base(&ntype, SH_NODE_TEX_IMAGE, "Image Texture", NODE_CLASS_TEXTURE); ntype.declare = file_ns::sh_node_tex_image_declare; - node_type_init(&ntype, file_ns::node_shader_init_tex_image); + ntype.initfunc = file_ns::node_shader_init_tex_image; node_type_storage( &ntype, "NodeTexImage", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_tex_image); + ntype.gpu_fn = file_ns::node_shader_gpu_tex_image; ntype.labelfunc = node_image_label; node_type_size_preset(&ntype, NODE_SIZE_LARGE); diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_magic.cc b/source/blender/nodes/shader/nodes/node_shader_tex_magic.cc index 205d3b89016..f68f1747b21 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_magic.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_magic.cc @@ -11,19 +11,19 @@ namespace blender::nodes::node_shader_tex_magic_cc { static void sh_node_tex_magic_declare(NodeDeclarationBuilder &b) { b.is_function_node(); - b.add_input<decl::Vector>(N_("Vector")).implicit_field(); + b.add_input<decl::Vector>(N_("Vector")).implicit_field(implicit_field_inputs::position); b.add_input<decl::Float>(N_("Scale")).min(-1000.0f).max(1000.0f).default_value(5.0f); b.add_input<decl::Float>(N_("Distortion")).min(-1000.0f).max(1000.0f).default_value(1.0f); b.add_output<decl::Color>(N_("Color")).no_muted_links(); b.add_output<decl::Float>(N_("Fac")).no_muted_links(); } -static void node_shader_buts_tex_magic(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_tex_magic(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "turbulence_depth", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE); } -static void node_shader_init_tex_magic(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_magic(bNodeTree * /*ntree*/, bNode *node) { NodeTexMagic *tex = MEM_cnew<NodeTexMagic>(__func__); BKE_texture_mapping_default(&tex->base.tex_mapping, TEXMAP_TYPE_POINT); @@ -35,7 +35,7 @@ static void node_shader_init_tex_magic(bNodeTree *UNUSED(ntree), bNode *node) static int node_shader_gpu_tex_magic(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -70,7 +70,7 @@ class MagicFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { const VArray<float3> &vector = params.readonly_single_input<float3>(0, "Vector"); const VArray<float> &scale = params.readonly_single_input<float>(1, "Scale"); @@ -177,10 +177,10 @@ void register_node_type_sh_tex_magic() sh_fn_node_type_base(&ntype, SH_NODE_TEX_MAGIC, "Magic Texture", NODE_CLASS_TEXTURE); ntype.declare = file_ns::sh_node_tex_magic_declare; ntype.draw_buttons = file_ns::node_shader_buts_tex_magic; - node_type_init(&ntype, file_ns::node_shader_init_tex_magic); + ntype.initfunc = file_ns::node_shader_init_tex_magic; node_type_storage( &ntype, "NodeTexMagic", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_tex_magic); + ntype.gpu_fn = file_ns::node_shader_gpu_tex_magic; ntype.build_multi_function = file_ns::sh_node_magic_tex_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_musgrave.cc b/source/blender/nodes/shader/nodes/node_shader_tex_musgrave.cc index a2241c2327f..e79b12b78b9 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_musgrave.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_musgrave.cc @@ -15,7 +15,9 @@ NODE_STORAGE_FUNCS(NodeTexMusgrave) static void sh_node_tex_musgrave_declare(NodeDeclarationBuilder &b) { b.is_function_node(); - b.add_input<decl::Vector>(N_("Vector")).hide_value().implicit_field(); + b.add_input<decl::Vector>(N_("Vector")) + .hide_value() + .implicit_field(implicit_field_inputs::position); b.add_input<decl::Float>(N_("W")).min(-1000.0f).max(1000.0f).make_available([](bNode &node) { /* Default to 1 instead of 4, because it is much faster. */ node_storage(node).dimensions = 1; @@ -29,13 +31,13 @@ static void sh_node_tex_musgrave_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("Fac")).no_muted_links(); } -static void node_shader_buts_tex_musgrave(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_tex_musgrave(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "musgrave_dimensions", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); uiItemR(layout, ptr, "musgrave_type", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } -static void node_shader_init_tex_musgrave(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_musgrave(bNodeTree * /*ntree*/, bNode *node) { NodeTexMusgrave *tex = MEM_cnew<NodeTexMusgrave>(__func__); BKE_texture_mapping_default(&tex->base.tex_mapping, TEXMAP_TYPE_POINT); @@ -83,7 +85,7 @@ static const char *gpu_shader_name_get(const int type, const int dimensions) static int node_shader_gpu_tex_musgrave(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -192,7 +194,7 @@ class MusgraveFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { auto get_vector = [&](int param_index) -> VArray<float3> { return params.readonly_single_input<float3>(param_index, "Vector"); @@ -533,11 +535,11 @@ void register_node_type_sh_tex_musgrave() ntype.declare = file_ns::sh_node_tex_musgrave_declare; ntype.draw_buttons = file_ns::node_shader_buts_tex_musgrave; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_init(&ntype, file_ns::node_shader_init_tex_musgrave); + ntype.initfunc = file_ns::node_shader_init_tex_musgrave; node_type_storage( &ntype, "NodeTexMusgrave", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_tex_musgrave); - node_type_update(&ntype, file_ns::node_shader_update_tex_musgrave); + ntype.gpu_fn = file_ns::node_shader_gpu_tex_musgrave; + ntype.updatefunc = file_ns::node_shader_update_tex_musgrave; ntype.build_multi_function = file_ns::sh_node_musgrave_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_noise.cc b/source/blender/nodes/shader/nodes/node_shader_tex_noise.cc index 87fb1aeac29..d72e9c3c451 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_noise.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_noise.cc @@ -15,7 +15,7 @@ NODE_STORAGE_FUNCS(NodeTexNoise) static void sh_node_tex_noise_declare(NodeDeclarationBuilder &b) { b.is_function_node(); - b.add_input<decl::Vector>(N_("Vector")).implicit_field(); + b.add_input<decl::Vector>(N_("Vector")).implicit_field(implicit_field_inputs::position); b.add_input<decl::Float>(N_("W")).min(-1000.0f).max(1000.0f).make_available([](bNode &node) { /* Default to 1 instead of 4, because it is much faster. */ node_storage(node).dimensions = 1; @@ -32,12 +32,12 @@ static void sh_node_tex_noise_declare(NodeDeclarationBuilder &b) b.add_output<decl::Color>(N_("Color")).no_muted_links(); } -static void node_shader_buts_tex_noise(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_tex_noise(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "noise_dimensions", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } -static void node_shader_init_tex_noise(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_noise(bNodeTree * /*ntree*/, bNode *node) { NodeTexNoise *tex = MEM_cnew<NodeTexNoise>(__func__); BKE_texture_mapping_default(&tex->base.tex_mapping, TEXMAP_TYPE_POINT); @@ -59,7 +59,7 @@ static const char *gpu_shader_get_name(const int dimensions) static int node_shader_gpu_tex_noise(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -120,7 +120,7 @@ class NoiseFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { int param = ELEM(dimensions_, 2, 3, 4) + ELEM(dimensions_, 1, 4); const VArray<float> &scale = params.readonly_single_input<float>(param++, "Scale"); @@ -249,11 +249,11 @@ void register_node_type_sh_tex_noise() sh_fn_node_type_base(&ntype, SH_NODE_TEX_NOISE, "Noise Texture", NODE_CLASS_TEXTURE); ntype.declare = file_ns::sh_node_tex_noise_declare; ntype.draw_buttons = file_ns::node_shader_buts_tex_noise; - node_type_init(&ntype, file_ns::node_shader_init_tex_noise); + ntype.initfunc = file_ns::node_shader_init_tex_noise; node_type_storage( &ntype, "NodeTexNoise", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_tex_noise); - node_type_update(&ntype, file_ns::node_shader_update_tex_noise); + ntype.gpu_fn = file_ns::node_shader_gpu_tex_noise; + ntype.updatefunc = file_ns::node_shader_update_tex_noise; ntype.build_multi_function = file_ns::sh_node_noise_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_pointdensity.cc b/source/blender/nodes/shader/nodes/node_shader_tex_pointdensity.cc index fcd1d4973ff..4005265e49a 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_pointdensity.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_pointdensity.cc @@ -17,9 +17,7 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("Density")); } -static void node_shader_buts_tex_pointdensity(uiLayout *layout, - bContext *UNUSED(C), - PointerRNA *ptr) +static void node_shader_buts_tex_pointdensity(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { bNode *node = (bNode *)ptr->data; NodeShaderTexPointDensity *shader_point_density = (NodeShaderTexPointDensity *)node->storage; @@ -63,7 +61,7 @@ static void node_shader_buts_tex_pointdensity(uiLayout *layout, } } -static void node_shader_init_tex_pointdensity(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_pointdensity(bNodeTree * /*ntree*/, bNode *node) { NodeShaderTexPointDensity *point_density = MEM_new<NodeShaderTexPointDensity>("new pd node"); point_density->resolution = 100; @@ -83,7 +81,7 @@ static void node_shader_free_tex_pointdensity(bNode *node) MEM_freeN(point_density); } -static void node_shader_copy_tex_pointdensity(bNodeTree *UNUSED(dest_ntree), +static void node_shader_copy_tex_pointdensity(bNodeTree * /*dst_ntree*/, bNode *dest_node, const bNode *src_node) { @@ -105,7 +103,7 @@ void register_node_type_sh_tex_pointdensity() sh_node_type_base(&ntype, SH_NODE_TEX_POINTDENSITY, "Point Density", NODE_CLASS_TEXTURE); ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_tex_pointdensity; - node_type_init(&ntype, file_ns::node_shader_init_tex_pointdensity); + ntype.initfunc = file_ns::node_shader_init_tex_pointdensity; node_type_storage(&ntype, "NodeShaderTexPointDensity", file_ns::node_shader_free_tex_pointdensity, diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_sky.cc b/source/blender/nodes/shader/nodes/node_shader_tex_sky.cc index f5a4d087dbd..faa0c0f0888 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_sky.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_sky.cc @@ -4,6 +4,8 @@ #include "node_shader_util.hh" #include "sky_model.h" +#include "BLI_task.hh" + #include "BKE_context.h" #include "BKE_scene.h" @@ -36,7 +38,7 @@ static void node_shader_buts_tex_sky(uiLayout *layout, bContext *C, PointerRNA * if (RNA_enum_get(ptr, "sky_type") == SHD_SKY_NISHITA) { Scene *scene = CTX_data_scene(C); if (BKE_scene_uses_blender_eevee(scene)) { - uiItemL(layout, TIP_("Nishita not available in Eevee"), ICON_ERROR); + uiItemL(layout, TIP_("Sun disc not available in Eevee"), ICON_ERROR); } uiItemR(layout, ptr, "sun_disc", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, 0); @@ -60,7 +62,7 @@ static void node_shader_buts_tex_sky(uiLayout *layout, bContext *C, PointerRNA * } } -static void node_shader_init_tex_sky(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_sky(bNodeTree * /*ntree*/, bNode *node) { NodeTexSky *tex = MEM_cnew<NodeTexSky>("NodeTexSky"); BKE_texture_mapping_default(&tex->base.tex_mapping, TEXMAP_TYPE_POINT); @@ -144,7 +146,7 @@ static void sky_precompute_old(SkyModelPreetham *sunsky, const float sun_angles[ static int node_shader_gpu_tex_sky(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -179,7 +181,7 @@ static int node_shader_gpu_tex_sky(GPUMaterial *mat, GPU_uniform(xyz_to_rgb.g), GPU_uniform(xyz_to_rgb.b)); } - if (tex->sky_model == 1) { + else if (tex->sky_model == 1) { /* Hosek / Wilkie */ sun_angles[0] = fmin(M_PI_2, sun_angles[0]); /* clamp to horizon */ SKY_ArHosekSkyModelState *sky_state = SKY_arhosek_xyz_skymodelstate_alloc_init( @@ -187,12 +189,12 @@ static int node_shader_gpu_tex_sky(GPUMaterial *mat, /* Pass sky_state->configs[3][9] as 3*(vec4+vec4)+vec3 */ float config_x07[8], config_y07[8], config_z07[8], config_xyz8[3]; for (int i = 0; i < 8; ++i) { - config_x07[i] = (float)sky_state->configs[0][i]; - config_y07[i] = (float)sky_state->configs[1][i]; - config_z07[i] = (float)sky_state->configs[2][i]; + config_x07[i] = float(sky_state->configs[0][i]); + config_y07[i] = float(sky_state->configs[1][i]); + config_z07[i] = float(sky_state->configs[2][i]); } for (int i = 0; i < 3; ++i) { - config_xyz8[i] = (float)sky_state->configs[i][8]; + config_xyz8[i] = float(sky_state->configs[i][8]); } float radiance[3]; for (int i = 0; i < 3; i++) { @@ -219,8 +221,52 @@ static int node_shader_gpu_tex_sky(GPUMaterial *mat, GPU_uniform(xyz_to_rgb.g), GPU_uniform(xyz_to_rgb.b)); } + else { + /* Nishita */ + + Array<float> pixels(4 * GPU_SKY_WIDTH * GPU_SKY_HEIGHT); + + threading::parallel_for(IndexRange(GPU_SKY_HEIGHT), 2, [&](IndexRange range) { + SKY_nishita_skymodel_precompute_texture(pixels.data(), + 4, + range.first(), + range.one_after_last(), + GPU_SKY_WIDTH, + GPU_SKY_HEIGHT, + tex->sun_elevation, + tex->altitude, + tex->air_density, + tex->dust_density, + tex->ozone_density); + }); + + float sun_rotation = fmodf(tex->sun_rotation, 2.0f * M_PI); + if (sun_rotation < 0.0f) { + sun_rotation += 2.0f * M_PI; + } + sun_rotation = 2.0f * M_PI - sun_rotation; + + XYZ_to_RGB xyz_to_rgb; + get_XYZ_to_RGB_for_gpu(&xyz_to_rgb); - return GPU_stack_link(mat, node, "node_tex_sky_nishita", in, out); + eGPUSamplerState sampler = GPU_SAMPLER_REPEAT | GPU_SAMPLER_FILTER; + /* To fix pole issue we clamp the v coordinate. */ + sampler &= ~GPU_SAMPLER_REPEAT_T; + float layer; + GPUNodeLink *sky_texture = GPU_image_sky( + mat, GPU_SKY_WIDTH, GPU_SKY_HEIGHT, pixels.data(), &layer, sampler); + return GPU_stack_link(mat, + node, + "node_tex_sky_nishita", + in, + out, + GPU_constant(&sun_rotation), + GPU_uniform(xyz_to_rgb.r), + GPU_uniform(xyz_to_rgb.g), + GPU_uniform(xyz_to_rgb.b), + sky_texture, + GPU_constant(&layer)); + } } static void node_shader_update_sky(bNodeTree *ntree, bNode *node) @@ -262,11 +308,11 @@ void register_node_type_sh_tex_sky() ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_tex_sky; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_init(&ntype, file_ns::node_shader_init_tex_sky); + ntype.initfunc = file_ns::node_shader_init_tex_sky; node_type_storage(&ntype, "NodeTexSky", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_tex_sky); + ntype.gpu_fn = file_ns::node_shader_gpu_tex_sky; /* Remove vector input for Nishita sky model. */ - node_type_update(&ntype, file_ns::node_shader_update_sky); + ntype.updatefunc = file_ns::node_shader_update_sky; ntype.gather_link_search_ops = file_ns::node_gather_link_searches; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_voronoi.cc b/source/blender/nodes/shader/nodes/node_shader_tex_voronoi.cc index fc6a5ef72b6..f07ef1b6c60 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_voronoi.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_voronoi.cc @@ -15,7 +15,9 @@ NODE_STORAGE_FUNCS(NodeTexVoronoi) static void sh_node_tex_voronoi_declare(NodeDeclarationBuilder &b) { b.is_function_node(); - b.add_input<decl::Vector>(N_("Vector")).hide_value().implicit_field(); + b.add_input<decl::Vector>(N_("Vector")) + .hide_value() + .implicit_field(implicit_field_inputs::position); b.add_input<decl::Float>(N_("W")).min(-1000.0f).max(1000.0f).make_available([](bNode &node) { /* Default to 1 instead of 4, because it is much faster. */ node_storage(node).dimensions = 1; @@ -49,7 +51,7 @@ static void sh_node_tex_voronoi_declare(NodeDeclarationBuilder &b) }); } -static void node_shader_buts_tex_voronoi(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_tex_voronoi(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "voronoi_dimensions", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); uiItemR(layout, ptr, "feature", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); @@ -60,7 +62,7 @@ static void node_shader_buts_tex_voronoi(uiLayout *layout, bContext *UNUSED(C), } } -static void node_shader_init_tex_voronoi(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_voronoi(bNodeTree * /*ntree*/, bNode *node) { NodeTexVoronoi *tex = MEM_cnew<NodeTexVoronoi>(__func__); BKE_texture_mapping_default(&tex->base.tex_mapping, TEXMAP_TYPE_POINT); @@ -119,7 +121,7 @@ static const char *gpu_shader_get_name(const int feature, const int dimensions) static int node_shader_gpu_tex_voronoi(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -173,7 +175,7 @@ static void node_shader_update_tex_voronoi(bNodeTree *ntree, bNode *node) outWSock, storage.feature != SHD_VORONOI_DISTANCE_TO_EDGE && storage.feature != SHD_VORONOI_N_SPHERE_RADIUS && - (ELEM(storage.dimensions, 1, 4))); + ELEM(storage.dimensions, 1, 4)); nodeSetSocketAvailability(ntree, outRadiusSock, storage.feature == SHD_VORONOI_N_SPHERE_RADIUS); } @@ -234,7 +236,7 @@ class VoronoiMinowskiFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { auto get_vector = [&](int param_index) -> VArray<float3> { return params.readonly_single_input<float3>(param_index, "Vector"); @@ -670,7 +672,7 @@ class VoronoiMetricFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { auto get_vector = [&](int param_index) -> VArray<float3> { return params.readonly_single_input<float3>(param_index, "Vector"); @@ -1177,7 +1179,7 @@ class VoronoiEdgeFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { auto get_vector = [&](int param_index) -> VArray<float3> { return params.readonly_single_input<float3>(param_index, "Vector"); @@ -1345,11 +1347,11 @@ void register_node_type_sh_tex_voronoi() sh_fn_node_type_base(&ntype, SH_NODE_TEX_VORONOI, "Voronoi Texture", NODE_CLASS_TEXTURE); ntype.declare = file_ns::sh_node_tex_voronoi_declare; ntype.draw_buttons = file_ns::node_shader_buts_tex_voronoi; - node_type_init(&ntype, file_ns::node_shader_init_tex_voronoi); + ntype.initfunc = file_ns::node_shader_init_tex_voronoi; node_type_storage( &ntype, "NodeTexVoronoi", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_tex_voronoi); - node_type_update(&ntype, file_ns::node_shader_update_tex_voronoi); + ntype.gpu_fn = file_ns::node_shader_gpu_tex_voronoi; + ntype.updatefunc = file_ns::node_shader_update_tex_voronoi; ntype.build_multi_function = file_ns::sh_node_voronoi_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_wave.cc b/source/blender/nodes/shader/nodes/node_shader_tex_wave.cc index 8475101dbaf..f4effe28815 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_wave.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_wave.cc @@ -13,7 +13,7 @@ namespace blender::nodes::node_shader_tex_wave_cc { static void sh_node_tex_wave_declare(NodeDeclarationBuilder &b) { b.is_function_node(); - b.add_input<decl::Vector>(N_("Vector")).implicit_field(); + b.add_input<decl::Vector>(N_("Vector")).implicit_field(implicit_field_inputs::position); b.add_input<decl::Float>(N_("Scale")).min(-1000.0f).max(1000.0f).default_value(5.0f); b.add_input<decl::Float>(N_("Distortion")).min(-1000.0f).max(1000.0f).default_value(0.0f); b.add_input<decl::Float>(N_("Detail")).min(0.0f).max(15.0f).default_value(2.0f); @@ -28,7 +28,7 @@ static void sh_node_tex_wave_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("Fac")).no_muted_links(); } -static void node_shader_buts_tex_wave(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_tex_wave(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "wave_type", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); int type = RNA_enum_get(ptr, "wave_type"); @@ -42,7 +42,7 @@ static void node_shader_buts_tex_wave(uiLayout *layout, bContext *UNUSED(C), Poi uiItemR(layout, ptr, "wave_profile", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } -static void node_shader_init_tex_wave(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_wave(bNodeTree * /*ntree*/, bNode *node) { NodeTexWave *tex = MEM_cnew<NodeTexWave>(__func__); BKE_texture_mapping_default(&tex->base.tex_mapping, TEXMAP_TYPE_POINT); @@ -56,7 +56,7 @@ static void node_shader_init_tex_wave(bNodeTree *UNUSED(ntree), bNode *node) static int node_shader_gpu_tex_wave(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -113,7 +113,7 @@ class WaveFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { const VArray<float3> &vector = params.readonly_single_input<float3>(0, "Vector"); const VArray<float> &scale = params.readonly_single_input<float>(1, "Scale"); @@ -224,9 +224,9 @@ void register_node_type_sh_tex_wave() ntype.declare = file_ns::sh_node_tex_wave_declare; ntype.draw_buttons = file_ns::node_shader_buts_tex_wave; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_init(&ntype, file_ns::node_shader_init_tex_wave); + ntype.initfunc = file_ns::node_shader_init_tex_wave; node_type_storage(&ntype, "NodeTexWave", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_tex_wave); + ntype.gpu_fn = file_ns::node_shader_gpu_tex_wave; ntype.build_multi_function = file_ns::sh_node_wave_tex_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_white_noise.cc b/source/blender/nodes/shader/nodes/node_shader_tex_white_noise.cc index 64075a903ab..58787a9afa3 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_white_noise.cc +++ b/source/blender/nodes/shader/nodes/node_shader_tex_white_noise.cc @@ -13,7 +13,10 @@ namespace blender::nodes::node_shader_tex_white_noise_cc { static void sh_node_tex_white_noise_declare(NodeDeclarationBuilder &b) { b.is_function_node(); - b.add_input<decl::Vector>(N_("Vector")).min(-10000.0f).max(10000.0f).implicit_field(); + b.add_input<decl::Vector>(N_("Vector")) + .min(-10000.0f) + .max(10000.0f) + .implicit_field(implicit_field_inputs::position); b.add_input<decl::Float>(N_("W")).min(-10000.0f).max(10000.0f).make_available([](bNode &node) { /* Default to 1 instead of 4, because it is faster. */ node.custom1 = 1; @@ -22,12 +25,12 @@ static void sh_node_tex_white_noise_declare(NodeDeclarationBuilder &b) b.add_output<decl::Color>(N_("Color")); } -static void node_shader_buts_white_noise(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_white_noise(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "noise_dimensions", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } -static void node_shader_init_tex_white_noise(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_tex_white_noise(bNodeTree * /*ntree*/, bNode *node) { node->custom1 = 3; } @@ -43,7 +46,7 @@ static const char *gpu_shader_get_name(const int dimensions) static int gpu_shader_tex_white_noise(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -94,7 +97,7 @@ class WhiteNoiseFunction : public fn::MultiFunction { return signature.build(); } - void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override + void call(IndexMask mask, fn::MFParams params, fn::MFContext /*context*/) const override { int param = ELEM(dimensions_, 2, 3, 4) + ELEM(dimensions_, 1, 4); @@ -177,7 +180,7 @@ class WhiteNoiseFunction : public fn::MultiFunction { static void sh_node_noise_build_multi_function(NodeMultiFunctionBuilder &builder) { const bNode &node = builder.node(); - builder.construct_and_set_matching_fn<WhiteNoiseFunction>((int)node.custom1); + builder.construct_and_set_matching_fn<WhiteNoiseFunction>(int(node.custom1)); } } // namespace blender::nodes::node_shader_tex_white_noise_cc @@ -191,9 +194,9 @@ void register_node_type_sh_tex_white_noise() sh_fn_node_type_base(&ntype, SH_NODE_TEX_WHITE_NOISE, "White Noise Texture", NODE_CLASS_TEXTURE); ntype.declare = file_ns::sh_node_tex_white_noise_declare; ntype.draw_buttons = file_ns::node_shader_buts_white_noise; - node_type_init(&ntype, file_ns::node_shader_init_tex_white_noise); - node_type_gpu(&ntype, file_ns::gpu_shader_tex_white_noise); - node_type_update(&ntype, file_ns::node_shader_update_tex_white_noise); + ntype.initfunc = file_ns::node_shader_init_tex_white_noise; + ntype.gpu_fn = file_ns::gpu_shader_tex_white_noise; + ntype.updatefunc = file_ns::node_shader_update_tex_white_noise; ntype.build_multi_function = file_ns::sh_node_noise_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_uv_along_stroke.cc b/source/blender/nodes/shader/nodes/node_shader_uv_along_stroke.cc index fa98cb3aa27..6923d51ab51 100644 --- a/source/blender/nodes/shader/nodes/node_shader_uv_along_stroke.cc +++ b/source/blender/nodes/shader/nodes/node_shader_uv_along_stroke.cc @@ -13,7 +13,7 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Vector>(N_("UV")); } -static void node_shader_buts_uvalongstroke(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_uvalongstroke(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "use_tips", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, 0); } diff --git a/source/blender/nodes/shader/nodes/node_shader_uvmap.cc b/source/blender/nodes/shader/nodes/node_shader_uvmap.cc index 53228f0a314..483e06f1192 100644 --- a/source/blender/nodes/shader/nodes/node_shader_uvmap.cc +++ b/source/blender/nodes/shader/nodes/node_shader_uvmap.cc @@ -31,7 +31,7 @@ static void node_shader_buts_uvmap(uiLayout *layout, bContext *C, PointerRNA *pt } } -static void node_shader_init_uvmap(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_uvmap(bNodeTree * /*ntree*/, bNode *node) { NodeShaderUVMap *attr = MEM_cnew<NodeShaderUVMap>("NodeShaderUVMap"); node->storage = attr; @@ -39,7 +39,7 @@ static void node_shader_init_uvmap(bNodeTree *UNUSED(ntree), bNode *node) static int node_shader_gpu_uvmap(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -70,10 +70,10 @@ void register_node_type_sh_uvmap() ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_uvmap; node_type_size_preset(&ntype, NODE_SIZE_MIDDLE); - node_type_init(&ntype, file_ns::node_shader_init_uvmap); + ntype.initfunc = file_ns::node_shader_init_uvmap; node_type_storage( &ntype, "NodeShaderUVMap", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_uvmap); + ntype.gpu_fn = file_ns::node_shader_gpu_uvmap; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_value.cc b/source/blender/nodes/shader/nodes/node_shader_value.cc index 14dbb3b25eb..c190438c417 100644 --- a/source/blender/nodes/shader/nodes/node_shader_value.cc +++ b/source/blender/nodes/shader/nodes/node_shader_value.cc @@ -16,7 +16,7 @@ static void sh_node_value_declare(NodeDeclarationBuilder &b) static int gpu_shader_value(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack * /*in*/, GPUNodeStack *out) { @@ -42,7 +42,7 @@ void register_node_type_sh_value() sh_fn_node_type_base(&ntype, SH_NODE_VALUE, "Value", NODE_CLASS_INPUT); ntype.declare = file_ns::sh_node_value_declare; - node_type_gpu(&ntype, file_ns::gpu_shader_value); + ntype.gpu_fn = file_ns::gpu_shader_value; ntype.build_multi_function = file_ns::sh_node_value_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_vector_displacement.cc b/source/blender/nodes/shader/nodes/node_shader_vector_displacement.cc index 9996e91177a..c9e4f9c8e14 100644 --- a/source/blender/nodes/shader/nodes/node_shader_vector_displacement.cc +++ b/source/blender/nodes/shader/nodes/node_shader_vector_displacement.cc @@ -13,14 +13,14 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Vector>(N_("Displacement")); } -static void node_shader_init_vector_displacement(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_vector_displacement(bNodeTree * /*ntree*/, bNode *node) { node->custom1 = SHD_SPACE_TANGENT; /* space */ } static int gpu_shader_vector_displacement(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -52,8 +52,8 @@ void register_node_type_sh_vector_displacement() sh_node_type_base( &ntype, SH_NODE_VECTOR_DISPLACEMENT, "Vector Displacement", NODE_CLASS_OP_VECTOR); ntype.declare = file_ns::node_declare; - node_type_init(&ntype, file_ns::node_shader_init_vector_displacement); - node_type_gpu(&ntype, file_ns::gpu_shader_vector_displacement); + ntype.initfunc = file_ns::node_shader_init_vector_displacement; + ntype.gpu_fn = file_ns::gpu_shader_vector_displacement; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_vector_math.cc b/source/blender/nodes/shader/nodes/node_shader_vector_math.cc index d01e03f9d71..f7cf70aa8e1 100644 --- a/source/blender/nodes/shader/nodes/node_shader_vector_math.cc +++ b/source/blender/nodes/shader/nodes/node_shader_vector_math.cc @@ -28,7 +28,7 @@ static void sh_node_vector_math_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("Value")); } -static void node_shader_buts_vect_math(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_vect_math(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "operation", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } @@ -141,7 +141,7 @@ static const char *gpu_shader_get_name(int mode) static int gpu_shader_vector_math(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -322,8 +322,8 @@ void register_node_type_sh_vect_math() ntype.declare = file_ns::sh_node_vector_math_declare; ntype.draw_buttons = file_ns::node_shader_buts_vect_math; ntype.labelfunc = node_vector_math_label; - node_type_gpu(&ntype, file_ns::gpu_shader_vector_math); - node_type_update(&ntype, file_ns::node_shader_update_vector_math); + ntype.gpu_fn = file_ns::gpu_shader_vector_math; + ntype.updatefunc = file_ns::node_shader_update_vector_math; ntype.build_multi_function = file_ns::sh_node_vector_math_build_multi_function; ntype.gather_link_search_ops = file_ns::sh_node_vector_math_gather_link_searches; diff --git a/source/blender/nodes/shader/nodes/node_shader_vector_rotate.cc b/source/blender/nodes/shader/nodes/node_shader_vector_rotate.cc index a036fc52d84..bdf7360873d 100644 --- a/source/blender/nodes/shader/nodes/node_shader_vector_rotate.cc +++ b/source/blender/nodes/shader/nodes/node_shader_vector_rotate.cc @@ -29,7 +29,7 @@ static void sh_node_vector_rotate_declare(NodeDeclarationBuilder &b) b.add_output<decl::Vector>(N_("Vector")); } -static void node_shader_buts_vector_rotate(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_vector_rotate(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "rotation_type", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, ICON_NONE); uiItemR(layout, ptr, "invert", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, 0); @@ -55,7 +55,7 @@ static const char *gpu_shader_get_name(int mode) static int gpu_shader_vector_rotate(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -212,8 +212,8 @@ void register_node_type_sh_vector_rotate() sh_fn_node_type_base(&ntype, SH_NODE_VECTOR_ROTATE, "Vector Rotate", NODE_CLASS_OP_VECTOR); ntype.declare = file_ns::sh_node_vector_rotate_declare; ntype.draw_buttons = file_ns::node_shader_buts_vector_rotate; - node_type_gpu(&ntype, file_ns::gpu_shader_vector_rotate); - node_type_update(&ntype, file_ns::node_shader_update_vector_rotate); + ntype.gpu_fn = file_ns::gpu_shader_vector_rotate; + ntype.updatefunc = file_ns::node_shader_update_vector_rotate; ntype.build_multi_function = file_ns::sh_node_vector_rotate_build_multi_function; nodeRegisterType(&ntype); diff --git a/source/blender/nodes/shader/nodes/node_shader_vector_transform.cc b/source/blender/nodes/shader/nodes/node_shader_vector_transform.cc index 159bd238212..03fb954f088 100644 --- a/source/blender/nodes/shader/nodes/node_shader_vector_transform.cc +++ b/source/blender/nodes/shader/nodes/node_shader_vector_transform.cc @@ -21,7 +21,7 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Vector>(N_("Vector")); } -static void node_shader_buts_vect_transform(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_vect_transform(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, @@ -33,7 +33,7 @@ static void node_shader_buts_vect_transform(uiLayout *layout, bContext *UNUSED(C uiItemR(layout, ptr, "convert_to", UI_ITEM_R_SPLIT_EMPTY_NAME, "", ICON_NONE); } -static void node_shader_init_vect_transform(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_vect_transform(bNodeTree * /*ntree*/, bNode *node) { NodeShaderVectTransform *vect = MEM_cnew<NodeShaderVectTransform>("NodeShaderVectTransform"); @@ -88,7 +88,7 @@ static const char *get_gpufn_name_from_to(short from, short to, bool is_directio static int gpu_shader_vect_transform(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -144,10 +144,10 @@ void register_node_type_sh_vect_transform() sh_node_type_base(&ntype, SH_NODE_VECT_TRANSFORM, "Vector Transform", NODE_CLASS_OP_VECTOR); ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_vect_transform; - node_type_init(&ntype, file_ns::node_shader_init_vect_transform); + ntype.initfunc = file_ns::node_shader_init_vect_transform; node_type_storage( &ntype, "NodeShaderVectTransform", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::gpu_shader_vect_transform); + ntype.gpu_fn = file_ns::gpu_shader_vect_transform; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_vertex_color.cc b/source/blender/nodes/shader/nodes/node_shader_vertex_color.cc index c636cc976e6..8f7e30b99df 100644 --- a/source/blender/nodes/shader/nodes/node_shader_vertex_color.cc +++ b/source/blender/nodes/shader/nodes/node_shader_vertex_color.cc @@ -29,7 +29,7 @@ static void node_shader_buts_vertex_color(uiLayout *layout, bContext *C, Pointer } } -static void node_shader_init_vertex_color(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_vertex_color(bNodeTree * /*ntree*/, bNode *node) { NodeShaderVertexColor *vertexColor = MEM_cnew<NodeShaderVertexColor>("NodeShaderVertexColor"); node->storage = vertexColor; @@ -37,7 +37,7 @@ static void node_shader_init_vertex_color(bNodeTree *UNUSED(ntree), bNode *node) static int node_shader_gpu_vertex_color(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -69,10 +69,10 @@ void register_node_type_sh_vertex_color() sh_node_type_base(&ntype, SH_NODE_VERTEX_COLOR, "Color Attribute", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_vertex_color; - node_type_init(&ntype, file_ns::node_shader_init_vertex_color); + ntype.initfunc = file_ns::node_shader_init_vertex_color; node_type_storage( &ntype, "NodeShaderVertexColor", node_free_standard_storage, node_copy_standard_storage); - node_type_gpu(&ntype, file_ns::node_shader_gpu_vertex_color); + ntype.gpu_fn = file_ns::node_shader_gpu_vertex_color; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_volume_absorption.cc b/source/blender/nodes/shader/nodes/node_shader_volume_absorption.cc index 930fa6e5fb9..e50331585e3 100644 --- a/source/blender/nodes/shader/nodes/node_shader_volume_absorption.cc +++ b/source/blender/nodes/shader/nodes/node_shader_volume_absorption.cc @@ -15,7 +15,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_volume_absorption(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -33,7 +33,7 @@ void register_node_type_sh_volume_absorption() sh_node_type_base(&ntype, SH_NODE_VOLUME_ABSORPTION, "Volume Absorption", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_volume_absorption); + ntype.gpu_fn = file_ns::node_shader_gpu_volume_absorption; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_volume_info.cc b/source/blender/nodes/shader/nodes/node_shader_volume_info.cc index 1f31e9c605f..6a1bc070f68 100644 --- a/source/blender/nodes/shader/nodes/node_shader_volume_info.cc +++ b/source/blender/nodes/shader/nodes/node_shader_volume_info.cc @@ -14,9 +14,9 @@ static void node_declare(NodeDeclarationBuilder &b) } static int node_shader_gpu_volume_info(GPUMaterial *mat, - bNode *UNUSED(node), - bNodeExecData *UNUSED(execdata), - GPUNodeStack *UNUSED(in), + bNode * /*node*/, + bNodeExecData * /*execdata*/, + GPUNodeStack * /*in*/, GPUNodeStack *out) { if (out[0].hasoutput) { @@ -49,7 +49,7 @@ void register_node_type_sh_volume_info() sh_node_type_base(&ntype, SH_NODE_VOLUME_INFO, "Volume Info", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_volume_info); + ntype.gpu_fn = file_ns::node_shader_gpu_volume_info; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_volume_principled.cc b/source/blender/nodes/shader/nodes/node_shader_volume_principled.cc index 4c4122a905f..4ff57042fe4 100644 --- a/source/blender/nodes/shader/nodes/node_shader_volume_principled.cc +++ b/source/blender/nodes/shader/nodes/node_shader_volume_principled.cc @@ -33,7 +33,7 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Shader>(N_("Volume")); } -static void node_shader_init_volume_principled(bNodeTree *UNUSED(ntree), bNode *node) +static void node_shader_init_volume_principled(bNodeTree * /*ntree*/, bNode *node) { LISTBASE_FOREACH (bNodeSocket *, sock, &node->inputs) { if (STREQ(sock->name, "Density Attribute")) { @@ -59,7 +59,7 @@ static void attribute_post_process(GPUMaterial *mat, static int node_shader_gpu_volume_principled(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -142,8 +142,8 @@ void register_node_type_sh_volume_principled() sh_node_type_base(&ntype, SH_NODE_VOLUME_PRINCIPLED, "Principled Volume", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; node_type_size_preset(&ntype, NODE_SIZE_LARGE); - node_type_init(&ntype, file_ns::node_shader_init_volume_principled); - node_type_gpu(&ntype, file_ns::node_shader_gpu_volume_principled); + ntype.initfunc = file_ns::node_shader_init_volume_principled; + ntype.gpu_fn = file_ns::node_shader_gpu_volume_principled; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_volume_scatter.cc b/source/blender/nodes/shader/nodes/node_shader_volume_scatter.cc index 0c6859ad1fb..b87792eef2e 100644 --- a/source/blender/nodes/shader/nodes/node_shader_volume_scatter.cc +++ b/source/blender/nodes/shader/nodes/node_shader_volume_scatter.cc @@ -20,7 +20,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_volume_scatter(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -38,7 +38,7 @@ void register_node_type_sh_volume_scatter() sh_node_type_base(&ntype, SH_NODE_VOLUME_SCATTER, "Volume Scatter", NODE_CLASS_SHADER); ntype.declare = file_ns::node_declare; - node_type_gpu(&ntype, file_ns::node_shader_gpu_volume_scatter); + ntype.gpu_fn = file_ns::node_shader_gpu_volume_scatter; 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 34fa639dd07..6fa495c3ead 100644 --- a/source/blender/nodes/shader/nodes/node_shader_wavelength.cc +++ b/source/blender/nodes/shader/nodes/node_shader_wavelength.cc @@ -15,7 +15,7 @@ static void node_declare(NodeDeclarationBuilder &b) static int node_shader_gpu_wavelength(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -41,7 +41,7 @@ void register_node_type_sh_wavelength() 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_gpu(&ntype, file_ns::node_shader_gpu_wavelength); + ntype.gpu_fn = file_ns::node_shader_gpu_wavelength; nodeRegisterType(&ntype); } diff --git a/source/blender/nodes/shader/nodes/node_shader_wireframe.cc b/source/blender/nodes/shader/nodes/node_shader_wireframe.cc index 6a1acda3353..b125e7221a6 100644 --- a/source/blender/nodes/shader/nodes/node_shader_wireframe.cc +++ b/source/blender/nodes/shader/nodes/node_shader_wireframe.cc @@ -14,14 +14,14 @@ static void node_declare(NodeDeclarationBuilder &b) b.add_output<decl::Float>(N_("Fac")); } -static void node_shader_buts_wireframe(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) +static void node_shader_buts_wireframe(uiLayout *layout, bContext * /*C*/, PointerRNA *ptr) { uiItemR(layout, ptr, "use_pixel_size", UI_ITEM_R_SPLIT_EMPTY_NAME, nullptr, 0); } static int node_shader_gpu_wireframe(GPUMaterial *mat, bNode *node, - bNodeExecData *UNUSED(execdata), + bNodeExecData * /*execdata*/, GPUNodeStack *in, GPUNodeStack *out) { @@ -47,7 +47,7 @@ void register_node_type_sh_wireframe() sh_node_type_base(&ntype, SH_NODE_WIREFRAME, "Wireframe", NODE_CLASS_INPUT); ntype.declare = file_ns::node_declare; ntype.draw_buttons = file_ns::node_shader_buts_wireframe; - node_type_gpu(&ntype, file_ns::node_shader_gpu_wireframe); + ntype.gpu_fn = file_ns::node_shader_gpu_wireframe; nodeRegisterType(&ntype); } |