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@pandora.be>2012-12-12 10:51:06 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2012-12-12 10:51:06 +0400
commit3759c10e5c832672920daf80b0f1018604cfb4b4 (patch)
tree1e7dc95b5a192213ea2f26927228e9fe173e5af4 /intern/cycles/render/svm.cpp
parentcf723e5e7c99cf653196b47afe131cb3cac24050 (diff)
Fix #33485: cycles OSL now autodetects the presence of emission and transparent
closures to enable multiple importance sampling and transparent shadows.
Diffstat (limited to 'intern/cycles/render/svm.cpp')
-rw-r--r--intern/cycles/render/svm.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/intern/cycles/render/svm.cpp b/intern/cycles/render/svm.cpp
index 4acd174e60f..f7cb8f62247 100644
--- a/intern/cycles/render/svm.cpp
+++ b/intern/cycles/render/svm.cpp
@@ -478,9 +478,9 @@ void SVMCompiler::generate_closure(ShaderNode *node, set<ShaderNode*>& done)
stack_clear_users(node, done);
stack_clear_temporary(node);
- if(node->name == ustring("emission"))
+ if(node->has_surface_emission())
current_shader->has_surface_emission = true;
- if(node->name == ustring("transparent"))
+ if(node->has_surface_transparent())
current_shader->has_surface_transparent = true;
/* end node is added outside of this */
@@ -538,9 +538,9 @@ void SVMCompiler::generate_multi_closure(ShaderNode *node, set<ShaderNode*>& don
mix_weight_offset = SVM_STACK_INVALID;
- if(node->name == ustring("emission"))
+ if(node->has_surface_emission())
current_shader->has_surface_emission = true;
- if(node->name == ustring("transparent"))
+ if(node->has_surface_transparent())
current_shader->has_surface_transparent = true;
}