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:
Diffstat (limited to 'source/blender/imbuf/intern/colormanagement_inline.c')
-rw-r--r--source/blender/imbuf/intern/colormanagement_inline.c40
1 files changed, 24 insertions, 16 deletions
diff --git a/source/blender/imbuf/intern/colormanagement_inline.c b/source/blender/imbuf/intern/colormanagement_inline.c
index 4c632da1520..668307ec802 100644
--- a/source/blender/imbuf/intern/colormanagement_inline.c
+++ b/source/blender/imbuf/intern/colormanagement_inline.c
@@ -27,38 +27,46 @@ unsigned char IMB_colormanagement_get_luminance_byte(const unsigned char rgb[3])
return unit_float_to_uchar_clamp(val);
}
-void IMB_colormanagement_xyz_to_rgb(float rgb[3], const float xyz[3])
+void IMB_colormanagement_xyz_to_scene_linear(float scene_linear[3], const float xyz[3])
{
- mul_v3_m3v3(rgb, imbuf_xyz_to_rgb, xyz);
+ mul_v3_m3v3(scene_linear, imbuf_xyz_to_scene_linear, xyz);
}
-void IMB_colormanagement_rgb_to_xyz(float xyz[3], const float rgb[3])
+void IMB_colormanagement_scene_linear_to_xyz(float xyz[3], const float scene_linear[3])
{
- mul_v3_m3v3(xyz, imbuf_rgb_to_xyz, rgb);
+ mul_v3_m3v3(xyz, imbuf_scene_linear_to_xyz, scene_linear);
}
-void IMB_colormanagement_rec709_to_rgb(float rgb[3], const float rec709[3])
+void IMB_colormanagement_rec709_to_scene_linear(float scene_linear[3], const float rec709[3])
{
- mul_v3_m3v3(rgb, imbuf_rec709_to_xyz, rec709);
- mul_v3_m3v3(rgb, imbuf_xyz_to_rgb, rgb);
+ mul_v3_m3v3(scene_linear, imbuf_rec709_to_scene_linear, rec709);
}
-void IMB_colormanagement_rgb_to_rec709(float rec709[3], const float rgb[3])
+void IMB_colormanagement_scene_linear_to_rec709(float rec709[3], const float scene_linear[3])
{
- mul_v3_m3v3(rec709, imbuf_rgb_to_xyz, rgb);
- mul_v3_m3v3(rec709, imbuf_xyz_to_rec709, rec709);
+ mul_v3_m3v3(rec709, imbuf_scene_linear_to_rec709, scene_linear);
}
-void IMB_colormanagement_aces_to_rgb(float rgb[3], const float aces[3])
+void IMB_colormanagement_scene_linear_to_srgb_v3(float srgb[3], const float scene_linear[3])
{
- mul_v3_m3v3(rgb, imbuf_aces_to_xyz, aces);
- mul_v3_m3v3(rgb, imbuf_xyz_to_rgb, rgb);
+ mul_v3_m3v3(srgb, imbuf_scene_linear_to_rec709, scene_linear);
+ linearrgb_to_srgb_v3_v3(srgb, srgb);
}
-void IMB_colormanagement_rgb_to_aces(float aces[3], const float rgb[3])
+void IMB_colormanagement_srgb_to_scene_linear_v3(float scene_linear[3], const float srgb[3])
{
- mul_v3_m3v3(aces, imbuf_rgb_to_xyz, rgb);
- mul_v3_m3v3(aces, imbuf_xyz_to_aces, aces);
+ srgb_to_linearrgb_v3_v3(scene_linear, srgb);
+ mul_m3_v3(imbuf_rec709_to_scene_linear, scene_linear);
+}
+
+void IMB_colormanagement_aces_to_scene_linear(float scene_linear[3], const float aces[3])
+{
+ mul_v3_m3v3(scene_linear, imbuf_aces_to_scene_linear, aces);
+}
+
+void IMB_colormanagement_scene_linear_to_aces(float aces[3], const float scene_linear[3])
+{
+ mul_v3_m3v3(aces, imbuf_scene_linear_to_aces, scene_linear);
}
#endif /* __IMB_COLORMANAGEMENT_INLINE_H__ */