[Bf-blender-cvs] [3e20ac8df3b] master: Fix T53874: OpenGL render to OpenEXR not working after recent changes.
Brecht Van Lommel
noreply at git.blender.org
Wed Jan 24 11:11:10 CET 2018
Commit: 3e20ac8df3b147624028ba1c32f66a81dd1b9b1c
Author: Brecht Van Lommel
Date: Wed Jan 24 11:03:03 2018 +0100
Branches: master
https://developer.blender.org/rB3e20ac8df3b147624028ba1c32f66a81dd1b9b1c
Fix T53874: OpenGL render to OpenEXR not working after recent changes.
Multilayer EXR also failed already in 2.79 for Sequencer and OpenGL rendering.
Now we revert to single layer OpenEXR in that case.
===================================================================
M source/blender/render/intern/source/pipeline.c
===================================================================
diff --git a/source/blender/render/intern/source/pipeline.c b/source/blender/render/intern/source/pipeline.c
index f5577ae89ea..5a1a15d0266 100644
--- a/source/blender/render/intern/source/pipeline.c
+++ b/source/blender/render/intern/source/pipeline.c
@@ -3334,11 +3334,14 @@ bool RE_WriteRenderViewsImage(ReportList *reports, RenderResult *rr, Scene *scen
BLI_strncpy(filepath, name, sizeof(filepath));
for (view_id = 0, rv = rr->views.first; rv; rv = rv->next, view_id++) {
+ /* Sequencer and OpenGL render can't save multiple EXR layers. */
+ bool is_float = rv->rect32 == NULL;
+
if (!is_mono) {
BKE_scene_multiview_view_filepath_get(&scene->r, filepath, rv->name, name);
}
- if (is_exr_rr) {
+ if (is_exr_rr && is_float) {
ok = RE_WriteRenderResult(reports, rr, name, &rd->im_format, rv->name, -1);
render_print_save_message(reports, name, ok, errno);
More information about the Bf-blender-cvs
mailing list