diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-10-01 16:41:20 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-10-01 16:41:20 +0400 |
commit | e7089c06439014aeefd7e8e0efdb07b375eca9ad (patch) | |
tree | 80aec9bb4cc65c7a4e4338ebc75f8b39fbcc57e5 | |
parent | 3e24c2546463a774ee10c915e3c8f8457f36290c (diff) |
Disable render part of display transformation for icon/texture preview
This change mainly caused by too dark icon generated for texture brushes,
but also makes it a bit more straightforward from what's going on point of view.
-rw-r--r-- | source/blender/editors/render/render_preview.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/source/blender/editors/render/render_preview.c b/source/blender/editors/render/render_preview.c index 6b6018e51d2..817067422af 100644 --- a/source/blender/editors/render/render_preview.c +++ b/source/blender/editors/render/render_preview.c @@ -271,9 +271,19 @@ static Scene *preview_prepare_scene(Scene *scene, ID *id, int id_type, ShaderPre else sce->r.xparts = sce->r.yparts = 4; - /* exception: don't color manage texture previews or icons */ - if ((id && sp->pr_method == PR_ICON_RENDER) || id_type == ID_TE) - BKE_scene_disable_color_management(sce); + /* exception: don't apply render part of display transform for texture previews or icons */ + if ((id && sp->pr_method == PR_ICON_RENDER) || id_type == ID_TE) { + ColorManagedDisplaySettings *display_settings = &sce->display_settings; + ColorManagedViewSettings *view_settings = &sce->view_settings; + + const char *default_view_name = IMB_colormanagement_view_get_default_name(display_settings->display_device); + + view_settings->exposure = 0.0f; + view_settings->gamma = 1.0f; + view_settings->flag &= ~COLORMANAGE_VIEW_USE_CURVES; + + BLI_strncpy(view_settings->view_transform, default_view_name, sizeof(view_settings->view_transform)); + } if ((id && sp->pr_method == PR_ICON_RENDER) && id_type != ID_WO) sce->r.alphamode = R_ALPHAPREMUL; |