19
$\begingroup$

I am having an issue with EXR file export that I did not encounter in previous versions of Blender. I used to be able to render a render layer with all its passes and get all the passes included with the render layer with the EXR export; the problem I am finding now is that I am not able to "pack" the passes with the EXR file (see graphic below). I am working with "standard" EXR, as I understand that the EXR multilayer is for multiple file handling (packing all the image files into a single container), but I may be wrong.

EXR export not working

In the screenshot, the graphic is an EXR saved from the rendered layer; you can see in the screenshot how the "extra" passes from the render layer has been ignored by the graphic and only shows the standard image, z and alpha passes. I found this issue for the first time with Blender 2.71; and maybe with Cycles; in the past I have never had an issue with EXR export.

Am I missing something? I hope EXRs still work with Blender, I wouldn't know how to composite without such invaluable aid. Sorry if this question has already been answered somewhere; I have really searched the site for information on EXR but I could not find an answer to my issue.

$\endgroup$
29
$\begingroup$

First you have to decide what type of OpenEXR you want to render:

  • OpenEXR to get single files of your passes or channels/layers
  • EXR Multilayer to get a multi-channel file with all your passes or channels/layers included

This decision really depends on your further workfow. For e.g. Blender or Nuke it's much more useful to have one multi-channel EXR, but in Photoshop, After Effects or Fusion it's easier to use single EXRs.

Then you have to decide which passes are key for compositing. In Scene Tab you can enable all standard passes of the render engine and create individual render layers.

enter image description here

In the context of the Layer Management the EXR Multilayer term is quite confusing. For this reason and also to consider the OpenEXR concept it should be named EXR Multichannel.

You are ready to render if Multilayer EXR fits your needs. Blender automatically writes all enabled passes and layers as single channels to the EXR as expected.

If you choose OpenEXR, Blender only saves the beauty pass (final render) although other passes are selected. To save all your passes or channels/layers separately is only possible with the help of the image compositor. In this case you have to create a file output node and add new input slots in the properties of the node:

enter image description here

To speed up this process you can also use Tlousky's production script. It automatically creates a file output node based on your enabled passes and your output directory:

enter image description here

Note: It's not updated since blender 2.69 that's why some passes are currently not supported.

The file output node makes it possible, whether OpenEXR or EXR Multilayer, but especially in the multilayer case, that you can unleash the full power of the format and pack your custom channels e.g. mattes or backgrounds like this:

enter image description here

Note: If a 'Z pass' is required, check out these answers: How can I get a Depth of field render pass?

$\endgroup$
  • $\begingroup$ Hey, this is very helpful. I am just diving into the whole EXR thing. I tried to reproduce your node set up and I failed adding new inputs for the file output node. I am using Blender v2.74 and either cycles nor the blender internal is offering me an option to add mmultiple inputs for this node. besides that, I am wondering why my z pass is white and how I can get a real depth pass form it. $\endgroup$ – Marten Zander Oct 21 '15 at 10:56
  • $\begingroup$ @SlimMarten Can't reproduce your issue, File Output node works as expected in 2.75a. $\endgroup$ – p2or Oct 21 '15 at 12:03
4
$\begingroup$

From the sounds of what you are explaining, You do want to select EXR Multipass.

the 'standard EXR' will only include RGBA, and an optional Z-depth, regardless of what other passes you have selected.

the OpenEXR Multi layer option will include each pass as a separate layer that you can then access from the image node inside blender.

The method Yauda had described will output a separate file for each pass. which will mean when you bring them back into blender, each layer will be have to be a separate image node.

$\endgroup$
1
$\begingroup$

I can't comment so I will ask it here: are you asking how to save the different passes to different files ?

If so, you can add a file output node that will export your passes in the desired format. Example of file output node

Here I apply some filter on my passes, but then I output the desired one into files. See the properties of my File Output Node. You can choose the format, codec, etc of the EXR files. You can even choose different format for different files if you prefer.

When you add the File Output Node, you will need to add as many input in the node as files you want.

I hope this helps.

$\endgroup$
  • $\begingroup$ Thank you very much. Your answer gives me excellent information and I find the screenshot very useful; my problem, however, was that I could not get any pass into the EXR; I finally found the problem: it was simply that I needed to use multilayered EXR; I had already tried that, but the new feature that I failed to see was that you needed to select the actual render layer in the little dropdown at the bottom of the image node; once the right render layer was selected, everything worked as expected. $\endgroup$ – Sangreelah Sep 25 '14 at 23:51

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.