When I render to a mulitchannel .exr file and open it in Nuke, the rgb layer is always empty (black).

Instead, the information for the beauty pass is found in a seperate layer called "combined". Why is Blender not putting the result of the combined pass into the rgb layer of the .exr file?

Can I somehow re-route that?


The OpenEXR file format stores pixel data in 2 ways (Scan Lines or Tiles), and read/writes data in 2 modes (Arbitrary Channels or RGBA Only).

enter image description here

Excerpt from http://www.openexr.com/ReadingAndWritingImageFiles.pdf

In our case, Blender only stores data via the Scan Line method, so our main focus in our the read/write interface in use.

When the OpenEXR format is chosen in Blender, the output class used is the OutputFile class, and the EXR format used is the RGBA Only format which renders out the single beauty pass with no channel information. This means that it only contains a single RGBA frame buffer.

enter image description here

Excerpt from http://www.openexr.com/ReadingAndWritingImageFiles.pdf:

When the OpenEXR Multilayer format is chosen in Blender, the output class used is the RgbaOutputFile class, and the EXR format used is the Arbitrary Channel mode which organizes all image data into Layers and Passes/Channels. There is no RGBA buffer that does not exist inside a Layer and Pass/Channel.

enter image description here

Excerpt from http://www.openexr.com/ReadingAndWritingImageFiles.pdf:

If we have an arbitrary Layer named "Foreground", then Blender automatically calls the beauty pass/channel "Combined" (we don't have control over the channel name, unfortunately). The image data would be defined as "Foreground.Combined.R", "Foreground.Combined.G", etc.

If Nuke is ingesting a MultiChannel EXR file, it should not be trying to read a master RGBA beauty pass because none exists. Image data only exists at the Layer.Channel level.

It probably would be more helpful if Blender could name a Layer as "rgb" (which it can) and the beauty pass "rgba" instead of "Combined" (which it can't).

  • $\begingroup$ Let me understand this. So you are saying, that a multi-channel exr file has no rgba layer by default? Also, all other 3d apps that save multi-channel .exr files put their beauty pass into an rgb layer. $\endgroup$ – realdanielh Jul 13 '15 at 20:42
  • 1
    $\begingroup$ That's my current understanding of the docs. In a multichannel file every RGBA channel would exist within a named Layer. In addition Blender forces the beauty channel to be named "Combined". $\endgroup$ – Todd McIntosh Jul 13 '15 at 20:45
  • $\begingroup$ I see. Thats really strange that "combined" cannot be changed to "rgba" I guess thats how all other apps write it out. They name their beauty layer "rgba", or maybe its just the first layer written to the exr file? Opening such an .exr file from blender in Photoshop also just displays black, btw. So its not only happening in Nuke. Definately a "blender"-thing going on ;) $\endgroup$ – realdanielh Jul 14 '15 at 21:39

Your beauty pass will be in its own channel in a MultiLayer OpenEXR, but you can make that the default channel by giving it an empty layer name. The default channels are called "R", "G", "B", and "A", instead of "Beauty.R", "Beauty.G", "Beauty.B", "Beauty.A". Nuke and After Effects should display the default RGBA if you leave the channel name blank in Blender composite. Example in this blog post the image below shows the blank channel name in File Output node:

File Output Node

I have confirmed that this works in After Effects.

  • 3
    $\begingroup$ Please note if you want to promote your own product/blog you must disclose your affiliation, otherwise your answer may be flagged as spam. Please read How to not be a spammer $\endgroup$ – DavidPostill Apr 20 '17 at 14:42
  • $\begingroup$ Thanks for the heads up. Removed link and posted cropped image. $\endgroup$ – Joel Howe Apr 20 '17 at 15:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.