Merge branch 'master' into blender2.8
[blender.git] / intern / cycles / kernel / kernel_film.h
index 4668b40b86dfcebda07e9255607a01f21770995b..b5f151d86639030fdf1f0c6e594d16ac8927ac86 100644 (file)
@@ -22,12 +22,12 @@ ccl_device float4 film_map(KernelGlobals *kg, float4 irradiance, float scale)
        float4 result = irradiance*scale;
 
        /* conversion to srgb */
-       result.x = color_scene_linear_to_srgb(result.x*exposure);
-       result.y = color_scene_linear_to_srgb(result.y*exposure);
-       result.z = color_scene_linear_to_srgb(result.z*exposure);
+       result.x = color_linear_to_srgb(result.x*exposure);
+       result.y = color_linear_to_srgb(result.y*exposure);
+       result.z = color_linear_to_srgb(result.z*exposure);
 
        /* clamp since alpha might be > 1.0 due to russian roulette */
-       result.w = clamp(result.w, 0.0f, 1.0f);
+       result.w = saturate(result.w);
 
        return result;
 }
@@ -37,10 +37,10 @@ ccl_device uchar4 film_float_to_byte(float4 color)
        uchar4 result;
 
        /* simple float to byte conversion */
-       result.x = (uchar)clamp(color.x*255.0f, 0.0f, 255.0f);
-       result.y = (uchar)clamp(color.y*255.0f, 0.0f, 255.0f);
-       result.z = (uchar)clamp(color.z*255.0f, 0.0f, 255.0f);
-       result.w = (uchar)clamp(color.w*255.0f, 0.0f, 255.0f);
+       result.x = (uchar)(saturate(color.x)*255.0f);
+       result.y = (uchar)(saturate(color.y)*255.0f);
+       result.z = (uchar)(saturate(color.z)*255.0f);
+       result.w = (uchar)(saturate(color.w)*255.0f);
 
        return result;
 }
@@ -87,4 +87,3 @@ ccl_device void kernel_film_convert_to_half_float(KernelGlobals *kg,
 }
 
 CCL_NAMESPACE_END
-