diff options
author | Alexander Gavrilov <angavrilov@gmail.com> | 2016-06-19 13:28:50 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2016-06-19 21:17:28 +0300 |
commit | f7bada00a73e3117b46742ece279fc95bac7e81f (patch) | |
tree | d61cd3afde9678e9909c3da82ae3019247fefef4 /intern/cycles/kernel/svm/svm_brightness.h | |
parent | 81e391a72747fe4d8ab1978a0929719844df35a1 (diff) |
Cycles: add constant folding for more color operation nodes.
Invert, brightness & constrast, separate/combine and Mix RGB blend modes
and clamping.
Diffstat (limited to 'intern/cycles/kernel/svm/svm_brightness.h')
-rw-r--r-- | intern/cycles/kernel/svm/svm_brightness.h | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/intern/cycles/kernel/svm/svm_brightness.h b/intern/cycles/kernel/svm/svm_brightness.h index e4d545a00ae..d71b0ee0b61 100644 --- a/intern/cycles/kernel/svm/svm_brightness.h +++ b/intern/cycles/kernel/svm/svm_brightness.h @@ -25,12 +25,7 @@ ccl_device void svm_node_brightness(ShaderData *sd, float *stack, uint in_color, float brightness = stack_load_float(stack, bright_offset); float contrast = stack_load_float(stack, contrast_offset); - float a = 1.0f + contrast; - float b = brightness - contrast*0.5f; - - color.x = max(a*color.x + b, 0.0f); - color.y = max(a*color.y + b, 0.0f); - color.z = max(a*color.z + b, 0.0f); + color = svm_brightness_contrast(color, brightness, contrast); if(stack_valid(out_color)) stack_store_float3(stack, out_color, color); |