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:
authorThomas Dinges <blender@dingto.org>2012-10-17 02:42:05 +0400
committerThomas Dinges <blender@dingto.org>2012-10-17 02:42:05 +0400
commitb4a83e1d0e524a165cef4d374b14ccebaf79b143 (patch)
treec5659a8f4b76298a3d7e8217728a3e4a1855413a /intern/cycles/kernel/osl/osl_services.cpp
parentc9fdf6e4960a01c3b42527a43b8ed7d325e6b95a (diff)
Cycles / OSL:
* Ray Length is now available in OSL (via get_attribute)
Diffstat (limited to 'intern/cycles/kernel/osl/osl_services.cpp')
-rw-r--r--intern/cycles/kernel/osl/osl_services.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/intern/cycles/kernel/osl/osl_services.cpp b/intern/cycles/kernel/osl/osl_services.cpp
index 6393412855b..be5273b9ad3 100644
--- a/intern/cycles/kernel/osl/osl_services.cpp
+++ b/intern/cycles/kernel/osl/osl_services.cpp
@@ -459,6 +459,15 @@ static bool get_object_standard_attribute(KernelGlobals *kg, ShaderData *sd, ust
set_attribute_float3(fval, type, derivatives, val);
return true;
}
+
+ /* Ray Length */
+ else if (name == "std::ray_length") {
+ float fval[3];
+ fval[0] = sd->ray_length;
+ fval[1] = fval[2] = 0.0; /* derivates set to 0 */
+ set_attribute_float(fval, type, derivatives, val);
+ return true;
+ }
else
return false;