diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-02-21 15:31:41 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-02-21 15:31:41 +0300 |
commit | 578cc2143d36d1d4ab3ef9583a5b207034b01f89 (patch) | |
tree | 95e9bbfedae8c1c027342c72abc25b6127c3e073 /intern/cycles/kernel/shaders | |
parent | 888d81018548eab1b33b5a6811f55f0b8b3c1749 (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.osl | 5 |
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); } } - |