[Bf-blender-cvs] [0b988a0aadb] master: Nodes: show shader -> other socket type as invalid link
Brecht Van Lommel
noreply at git.blender.org
Sat Jun 22 16:00:50 CEST 2019
Commit: 0b988a0aadb7646277757e11eba31c3e39a88f7f
Author: Brecht Van Lommel
Date: Sat Jun 22 15:36:29 2019 +0200
Branches: master
https://developer.blender.org/rB0b988a0aadb7646277757e11eba31c3e39a88f7f
Nodes: show shader -> other socket type as invalid link
===================================================================
M source/blender/nodes/shader/node_shader_tree.c
===================================================================
diff --git a/source/blender/nodes/shader/node_shader_tree.c b/source/blender/nodes/shader/node_shader_tree.c
index 05ca9394786..8af570aea08 100644
--- a/source/blender/nodes/shader/node_shader_tree.c
+++ b/source/blender/nodes/shader/node_shader_tree.c
@@ -172,6 +172,16 @@ static void update(bNodeTree *ntree)
}
}
+static bool shader_validate_link(bNodeTree *UNUSED(ntree), bNodeLink *link)
+{
+ /* Can't connect shader into other socket types, other way around is fine
+ * since it will be interpreted as emission. */
+ if (link->fromsock->type == SOCK_SHADER) {
+ return (link->tosock->type == SOCK_SHADER);
+ }
+ return true;
+}
+
bNodeTreeType *ntreeType_Shader;
void register_node_tree_type_sh(void)
@@ -192,6 +202,7 @@ void register_node_tree_type_sh(void)
tt->update = update;
tt->poll = shader_tree_poll;
tt->get_from_context = shader_get_from_context;
+ tt->validate_link = shader_validate_link;
tt->ext.srna = &RNA_ShaderNodeTree;
More information about the Bf-blender-cvs
mailing list