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/render/intern/pipeline.c')
-rw-r--r--source/blender/render/intern/pipeline.c31
1 files changed, 12 insertions, 19 deletions
diff --git a/source/blender/render/intern/pipeline.c b/source/blender/render/intern/pipeline.c
index 0ca2ca82cf7..a6c2e9eb194 100644
--- a/source/blender/render/intern/pipeline.c
+++ b/source/blender/render/intern/pipeline.c
@@ -1212,14 +1212,8 @@ static void do_render_compositor(Render *re)
RenderView *rv;
for (rv = re->result->views.first; rv; rv = rv->next) {
- ntreeCompositExecTree(re->pipeline_scene_eval,
- ntree,
- &re->r,
- true,
- G.background == 0,
- &re->scene->view_settings,
- &re->scene->display_settings,
- rv->name);
+ ntreeCompositExecTree(
+ re->pipeline_scene_eval, ntree, &re->r, true, G.background == 0, rv->name);
}
ntree->stats_draw = NULL;
@@ -1960,17 +1954,19 @@ bool RE_WriteRenderViewsMovie(ReportList *reports,
return false;
}
+ ImageFormatData image_format;
+ BKE_image_format_init_for_write(&image_format, scene, NULL);
+
const bool is_mono = BLI_listbase_count_at_most(&rr->views, 2) < 2;
const float dither = scene->r.dither_intensity;
- if (is_mono || (scene->r.im_format.views_format == R_IMF_VIEWS_INDIVIDUAL)) {
+ if (is_mono || (image_format.views_format == R_IMF_VIEWS_INDIVIDUAL)) {
int view_id;
for (view_id = 0; view_id < totvideos; view_id++) {
const char *suffix = BKE_scene_multiview_view_id_suffix_get(&scene->r, view_id);
ImBuf *ibuf = RE_render_result_rect_to_ibuf(rr, &rd->im_format, dither, view_id);
- IMB_colormanagement_imbuf_for_write(
- ibuf, true, false, &scene->view_settings, &scene->display_settings, &scene->r.im_format);
+ IMB_colormanagement_imbuf_for_write(ibuf, true, false, &image_format);
ok &= mh->append_movie(movie_ctx_arr[view_id],
rd,
@@ -1992,21 +1988,16 @@ bool RE_WriteRenderViewsMovie(ReportList *reports,
ImBuf *ibuf_arr[3] = {NULL};
int i;
- BLI_assert((totvideos == 1) && (scene->r.im_format.views_format == R_IMF_VIEWS_STEREO_3D));
+ BLI_assert((totvideos == 1) && (image_format.views_format == R_IMF_VIEWS_STEREO_3D));
for (i = 0; i < 2; i++) {
int view_id = BLI_findstringindex(&rr->views, names[i], offsetof(RenderView, name));
ibuf_arr[i] = RE_render_result_rect_to_ibuf(rr, &rd->im_format, dither, view_id);
- IMB_colormanagement_imbuf_for_write(ibuf_arr[i],
- true,
- false,
- &scene->view_settings,
- &scene->display_settings,
- &scene->r.im_format);
+ IMB_colormanagement_imbuf_for_write(ibuf_arr[i], true, false, &image_format);
}
- ibuf_arr[2] = IMB_stereo3d_ImBuf(&scene->r.im_format, ibuf_arr[0], ibuf_arr[1]);
+ ibuf_arr[2] = IMB_stereo3d_ImBuf(&image_format, ibuf_arr[0], ibuf_arr[1]);
ok = mh->append_movie(movie_ctx_arr[0],
rd,
@@ -2024,6 +2015,8 @@ bool RE_WriteRenderViewsMovie(ReportList *reports,
}
}
+ BKE_image_format_free(&image_format);
+
return ok;
}