[Bf-blender-cvs] [328208a] master: Cycles: Fix shader update bug introduced by recent commits
Sergey Sharybin
noreply at git.blender.org
Wed Nov 25 12:06:03 CET 2015
Commit: 328208a6a646448246f002a2aa144633c67197e7
Author: Sergey Sharybin
Date: Wed Nov 25 16:04:45 2015 +0500
Branches: master
https://developer.blender.org/rB328208a6a646448246f002a2aa144633c67197e7
Cycles: Fix shader update bug introduced by recent commits
Seems set_intersection() requires passing explicit comparator if non-default
one is used for the sets. A bit weird, but can't really find another explanation
here about whats' going on here.
===================================================================
M intern/cycles/render/svm.cpp
===================================================================
diff --git a/intern/cycles/render/svm.cpp b/intern/cycles/render/svm.cpp
index a4c7e7e..b8a5b4d 100644
--- a/intern/cycles/render/svm.cpp
+++ b/intern/cycles/render/svm.cpp
@@ -528,9 +528,11 @@ void SVMCompiler::generate_multi_closure(ShaderNode *root_node,
find_dependencies(cl1deps, done, cl1in);
find_dependencies(cl2deps, done, cl2in);
+ ShaderNodeIDComparator node_id_comp;
set_intersection(cl1deps.begin(), cl1deps.end(),
cl2deps.begin(), cl2deps.end(),
- std::inserter(shareddeps, shareddeps.begin()));
+ std::inserter(shareddeps, shareddeps.begin()),
+ node_id_comp);
/* it's possible some nodes are not shared between this mix node
* inputs, but still needed to be always executed, this mainly
@@ -542,10 +544,12 @@ void SVMCompiler::generate_multi_closure(ShaderNode *root_node,
find_dependencies(rootdeps, done, in, node);
set_intersection(rootdeps.begin(), rootdeps.end(),
cl1deps.begin(), cl1deps.end(),
- std::inserter(shareddeps, shareddeps.begin()));
+ std::inserter(shareddeps, shareddeps.begin()),
+ node_id_comp);
set_intersection(rootdeps.begin(), rootdeps.end(),
cl2deps.begin(), cl2deps.end(),
- std::inserter(shareddeps, shareddeps.begin()));
+ std::inserter(shareddeps, shareddeps.begin()),
+ node_id_comp);
}
}
More information about the Bf-blender-cvs
mailing list