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

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@gmail.com>2015-10-10 22:54:34 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2015-10-11 09:54:51 +0300
commit3ed22c3f3c6e4aa673bedea6d391d7c471f2829a (patch)
treefac31185a07ffd4836c50b38aba50c001f2995b8
parent23f7e16960f39137ed7145eb5b950cb88f61d557 (diff)
Revert "Fix T46406: Cycles ignores default socket value associated with group socket"
Fixes T46442.
-rw-r--r--intern/cycles/blender/blender_shader.cpp18
1 files changed, 3 insertions, 15 deletions
diff --git a/intern/cycles/blender/blender_shader.cpp b/intern/cycles/blender/blender_shader.cpp
index 14c49b45f88..7b262fdc29b 100644
--- a/intern/cycles/blender/blender_shader.cpp
+++ b/intern/cycles/blender/blender_shader.cpp
@@ -107,15 +107,8 @@ static ShaderSocketType convert_socket_type(BL::NodeSocket b_socket)
}
}
-template <class SocketType>
-static void set_default_value(ShaderInput *input,
- SocketType b_sock,
- BL::BlendData b_data,
- BL::ID b_id)
+static void set_default_value(ShaderInput *input, BL::NodeSocket b_sock, BL::BlendData b_data, BL::ID b_id)
{
- /* TODO(sergey): Use static assert to check SocketType is either BL::NodeSocket
- * or BL::NodeSocketInterface.
- */
/* copy values for non linked inputs */
switch(input->type) {
case SHADER_SOCKET_FLOAT: {
@@ -918,8 +911,7 @@ static void add_nodes(Scene *scene,
* Do this even if the node group has no internal tree,
* so that links have something to connect to and assert won't fail.
*/
- int input_index = 0;
- for(b_node->inputs.begin(b_input); b_input != b_node->inputs.end(); ++b_input, ++input_index) {
+ for(b_node->inputs.begin(b_input); b_input != b_node->inputs.end(); ++b_input) {
ProxyNode *proxy = new ProxyNode(convert_socket_type(*b_input));
graph->add(proxy);
@@ -928,11 +920,7 @@ static void add_nodes(Scene *scene,
input_map[b_input->ptr.data] = proxy->inputs[0];
- /* Use default value from corresponding socket interface since it's
- * not copied from group to actual group node.
- */
- BL::NodeSocketInterface socket_interface = b_group_ntree.inputs[input_index];
- set_default_value(proxy->inputs[0], socket_interface, b_data, b_ntree);
+ set_default_value(proxy->inputs[0], *b_input, b_data, b_ntree);
}
for(b_node->outputs.begin(b_output); b_output != b_node->outputs.end(); ++b_output) {
ProxyNode *proxy = new ProxyNode(convert_socket_type(*b_output));