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/blenkernel')
-rw-r--r--source/blender/blenkernel/BKE_colortools.h30
-rw-r--r--source/blender/blenkernel/intern/colortools.c26
-rw-r--r--source/blender/blenkernel/intern/image.c3
-rw-r--r--source/blender/blenkernel/intern/scene.c3
4 files changed, 39 insertions, 23 deletions
diff --git a/source/blender/blenkernel/BKE_colortools.h b/source/blender/blenkernel/BKE_colortools.h
index 5332b3acd72..7c378bd3e06 100644
--- a/source/blender/blenkernel/BKE_colortools.h
+++ b/source/blender/blenkernel/BKE_colortools.h
@@ -95,18 +95,26 @@ void scopes_update(struct Scopes *scopes, struct ImBuf *ibuf, con
void scopes_free(struct Scopes *scopes);
void scopes_new(struct Scopes *scopes);
-void BKE_color_managed_display_settings_init(struct ColorManagedDisplaySettings *settings);
-void BKE_color_managed_display_settings_copy(struct ColorManagedDisplaySettings *new_settings,
- const struct ColorManagedDisplaySettings *settings);
+void BKE_color_managed_display_settings_init(
+ struct ColorManagedDisplaySettings *settings);
+void BKE_color_managed_display_settings_copy(
+ struct ColorManagedDisplaySettings *new_settings,
+ const struct ColorManagedDisplaySettings *settings);
-void BKE_color_managed_view_settings_init(struct ColorManagedViewSettings *settings);
-void BKE_color_managed_view_settings_copy(struct ColorManagedViewSettings *new_settings,
- const struct ColorManagedViewSettings *settings);
+void BKE_color_managed_view_settings_init(
+ struct ColorManagedViewSettings *settings,
+ const struct ColorManagedDisplaySettings *display_settings);
+void BKE_color_managed_view_settings_copy(
+ struct ColorManagedViewSettings *new_settings,
+ const struct ColorManagedViewSettings *settings);
void BKE_color_managed_view_settings_free(struct ColorManagedViewSettings *settings);
-void BKE_color_managed_colorspace_settings_init(struct ColorManagedColorspaceSettings *colorspace_settings);
-void BKE_color_managed_colorspace_settings_copy(struct ColorManagedColorspaceSettings *colorspace_settings,
- const struct ColorManagedColorspaceSettings *settings);
-bool BKE_color_managed_colorspace_settings_equals(const struct ColorManagedColorspaceSettings *settings1,
- const struct ColorManagedColorspaceSettings *settings2);
+void BKE_color_managed_colorspace_settings_init(
+ struct ColorManagedColorspaceSettings *colorspace_settings);
+void BKE_color_managed_colorspace_settings_copy(
+ struct ColorManagedColorspaceSettings *colorspace_settings,
+ const struct ColorManagedColorspaceSettings *settings);
+bool BKE_color_managed_colorspace_settings_equals(
+ const struct ColorManagedColorspaceSettings *settings1,
+ const struct ColorManagedColorspaceSettings *settings2);
#endif
diff --git a/source/blender/blenkernel/intern/colortools.c b/source/blender/blenkernel/intern/colortools.c
index 108e188fe92..bd006c8b832 100644
--- a/source/blender/blenkernel/intern/colortools.c
+++ b/source/blender/blenkernel/intern/colortools.c
@@ -1569,17 +1569,23 @@ void BKE_color_managed_display_settings_copy(ColorManagedDisplaySettings *new_se
BLI_strncpy(new_settings->display_device, settings->display_device, sizeof(new_settings->display_device));
}
-void BKE_color_managed_view_settings_init(ColorManagedViewSettings *settings)
+void BKE_color_managed_view_settings_init(
+ ColorManagedViewSettings *view_settings,
+ const ColorManagedDisplaySettings *display_settings)
{
- /* OCIO_TODO: use default view transform here when OCIO is completely integrated
- * and proper versioning stuff is added.
- * for now use NONE to be compatible with all current files
- */
- BLI_strncpy(settings->view_transform, "Default", sizeof(settings->view_transform));
- BLI_strncpy(settings->look, "None", sizeof(settings->look));
-
- settings->gamma = 1.0f;
- settings->exposure = 0.0f;
+ struct ColorManagedDisplay *display =
+ IMB_colormanagement_display_get_named(
+ display_settings->display_device);
+ BLI_strncpy(
+ view_settings->view_transform,
+ IMB_colormanagement_display_get_default_view_transform_name(display),
+ sizeof(view_settings->view_transform));
+ /* TODO(sergey): Find a way to make look query more reliable with non
+ * default configuration. */
+ BLI_strncpy(view_settings->look, "None", sizeof(view_settings->look));
+
+ view_settings->gamma = 1.0f;
+ view_settings->exposure = 0.0f;
}
void BKE_color_managed_view_settings_copy(ColorManagedViewSettings *new_settings,
diff --git a/source/blender/blenkernel/intern/image.c b/source/blender/blenkernel/intern/image.c
index f1a921650f0..fc8e992915e 100644
--- a/source/blender/blenkernel/intern/image.c
+++ b/source/blender/blenkernel/intern/image.c
@@ -1402,7 +1402,8 @@ void BKE_imformat_defaults(ImageFormatData *im_format)
im_format->compress = 15;
BKE_color_managed_display_settings_init(&im_format->display_settings);
- BKE_color_managed_view_settings_init(&im_format->view_settings);
+ BKE_color_managed_view_settings_init(&im_format->view_settings,
+ &im_format->display_settings);
}
void BKE_imbuf_to_image_format(struct ImageFormatData *im_format, const ImBuf *imbuf)
diff --git a/source/blender/blenkernel/intern/scene.c b/source/blender/blenkernel/intern/scene.c
index 7a6f1ec85b4..e8aebb2dbaa 100644
--- a/source/blender/blenkernel/intern/scene.c
+++ b/source/blender/blenkernel/intern/scene.c
@@ -763,7 +763,8 @@ void BKE_scene_init(Scene *sce)
colorspace_name = IMB_colormanagement_role_colorspace_name_get(COLOR_ROLE_DEFAULT_SEQUENCER);
BKE_color_managed_display_settings_init(&sce->display_settings);
- BKE_color_managed_view_settings_init(&sce->view_settings);
+ BKE_color_managed_view_settings_init(&sce->view_settings,
+ &sce->display_settings);
BLI_strncpy(sce->sequencer_colorspace_settings.name, colorspace_name,
sizeof(sce->sequencer_colorspace_settings.name));