diff options
Diffstat (limited to 'intern/cycles/kernel/shaders/node_hsv.osl')
-rw-r--r-- | intern/cycles/kernel/shaders/node_hsv.osl | 36 |
1 files changed, 17 insertions, 19 deletions
diff --git a/intern/cycles/kernel/shaders/node_hsv.osl b/intern/cycles/kernel/shaders/node_hsv.osl index d72a87a951f..30c56a20a92 100644 --- a/intern/cycles/kernel/shaders/node_hsv.osl +++ b/intern/cycles/kernel/shaders/node_hsv.osl @@ -17,28 +17,26 @@ #include "stdosl.h" #include "node_color.h" -shader node_hsv( - float Hue = 0.5, - float Saturation = 1.0, - float Value = 1.0, - float Fac = 0.5, - color ColorIn = 0.0, - output color ColorOut = 0.0) +shader node_hsv(float Hue = 0.5, + float Saturation = 1.0, + float Value = 1.0, + float Fac = 0.5, + color ColorIn = 0.0, + output color ColorOut = 0.0) { - color Color = rgb_to_hsv(ColorIn); + color Color = rgb_to_hsv(ColorIn); - // remember: fmod doesn't work for negative numbers - Color[0] = fmod(Color[0] + Hue + 0.5, 1.0); - Color[1] = clamp(Color[1] * Saturation, 0.0, 1.0); - Color[2] *= Value; + // remember: fmod doesn't work for negative numbers + Color[0] = fmod(Color[0] + Hue + 0.5, 1.0); + Color[1] = clamp(Color[1] * Saturation, 0.0, 1.0); + Color[2] *= Value; - Color = hsv_to_rgb(Color); + Color = hsv_to_rgb(Color); - // Clamp color to prevent negative values cauzed by oversaturation. - Color[0] = max(Color[0], 0.0); - Color[1] = max(Color[1], 0.0); - Color[2] = max(Color[2], 0.0); + // Clamp color to prevent negative values cauzed by oversaturation. + Color[0] = max(Color[0], 0.0); + Color[1] = max(Color[1], 0.0); + Color[2] = max(Color[2], 0.0); - ColorOut = mix(ColorIn, Color, Fac); + ColorOut = mix(ColorIn, Color, Fac); } - |