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
path: root/intern
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2012-12-16 13:37:32 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2012-12-16 13:37:32 +0400
commit176292067eaa5b56c8bdee3d58890f01007bd479 (patch)
treecbe0363f4dce259aaf5d48df2843acbd109c6134 /intern
parente114459ba36276aed5f3e04d99e7c8556a3e206b (diff)
Cycles OSL: small optimization to geometry node, tangent output still was
not properly optimized out in some cases. For reference, setting this will give detailed information about OSL shaders: export OSL_OPTIONS="statistics:level=1,debug=1,llvm_debug=1"
Diffstat (limited to 'intern')
-rw-r--r--intern/cycles/kernel/osl/osl_shader.cpp3
-rw-r--r--intern/cycles/kernel/shaders/node_geometry.osl3
2 files changed, 1 insertions, 5 deletions
diff --git a/intern/cycles/kernel/osl/osl_shader.cpp b/intern/cycles/kernel/osl/osl_shader.cpp
index f5c04b6755e..3ff032374fc 100644
--- a/intern/cycles/kernel/osl/osl_shader.cpp
+++ b/intern/cycles/kernel/osl/osl_shader.cpp
@@ -172,9 +172,6 @@ static void flatten_surface_closure_tree(ShaderData *sd, bool no_glossy,
break;
}
case OSL::ClosurePrimitive::Emissive: {
- if (sd->num_closure == MAX_CLOSURE)
- return;
-
/* sample weight */
float sample_weight = fabsf(average(weight));
diff --git a/intern/cycles/kernel/shaders/node_geometry.osl b/intern/cycles/kernel/shaders/node_geometry.osl
index d1c11b70081..3d5d67360ce 100644
--- a/intern/cycles/kernel/shaders/node_geometry.osl
+++ b/intern/cycles/kernel/shaders/node_geometry.osl
@@ -56,8 +56,7 @@ shader node_geometry(
0.0, 0.0, 0.0, 0.0,
0.5, -0.5, 0.0, 1.0);
- vector T = transform(project, generated);
- T = transform("object", "world", T);
+ vector T = transform("object", "world", transform(project, generated));
Tangent = cross(Normal, normalize(cross(T, Normal)));
}
else {