[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