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:
authorSergey Sharybin <sergey.vfx@gmail.com>2015-02-21 15:31:41 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2015-02-21 15:31:41 +0300
commit578cc2143d36d1d4ab3ef9583a5b207034b01f89 (patch)
tree95e9bbfedae8c1c027342c72abc25b6127c3e073 /intern/cycles/kernel/shaders
parent888d81018548eab1b33b5a6811f55f0b8b3c1749 (diff)
Cycles: Add note about autodiff in OSL wireframe shader
Diffstat (limited to 'intern/cycles/kernel/shaders')
-rw-r--r--intern/cycles/kernel/shaders/node_wireframe.osl5
1 files changed, 4 insertions, 1 deletions
diff --git a/intern/cycles/kernel/shaders/node_wireframe.osl b/intern/cycles/kernel/shaders/node_wireframe.osl
index 1ab0a6536eb..5cc214495dd 100644
--- a/intern/cycles/kernel/shaders/node_wireframe.osl
+++ b/intern/cycles/kernel/shaders/node_wireframe.osl
@@ -24,6 +24,10 @@ shader node_wireframe(
output float Fac = 0.0)
{
Fac = wireframe("triangles", Size, use_pixel_size);
+ /* TODO(sergey): Since we can't use autodiff here we do algebraic
+ * calculation of derivatives by definition. We could probably
+ * optimize this a bit by doing some extra calculation in wireframe().
+ */
if (bump_offset == "dx") {
point dx = Dx(P);
P -= dx;
@@ -35,4 +39,3 @@ shader node_wireframe(
Fac += (Fac - wireframe("triangles", Size, use_pixel_size)) / length(dy);
}
}
-