7
$\begingroup$

I'm using several scenes to render several images at the same time with the File Output nodes in the compositor. I have different Color Management settings in my scenes. Yet when I render my images all of them use the Color Management settings of the scene I am currently in.

How do I make the Cycles Compositor use the Color Management settings of the scene that is used in my different Render Layers?

$\endgroup$
  • $\begingroup$ AFAIK the Color Management is tied to the scene. A scene may be composed of different layers, but they won't affect the Color Management. $\endgroup$ – metaphor_set Aug 11 '16 at 18:34
  • $\begingroup$ I am rendering from three different scenes in the composer. They all have separate Color Management values. $\endgroup$ – Školstvo Aug 11 '16 at 18:41
  • $\begingroup$ How are you creating the values for color management? Are you creating LUTs, are you using curves, gamma, exposure, looks? Please elaborate, $\endgroup$ – cegaton Aug 12 '16 at 3:18
  • $\begingroup$ I'm using curves to use negative values for some complex matrix calculations. $\endgroup$ – Školstvo Aug 12 '16 at 8:13
  • $\begingroup$ My feeling is that you might be better off exporting your images as EXR and then using a compositing app like Nuke, Natron or Fusion, that can handle more complex transformations. $\endgroup$ – cegaton Aug 12 '16 at 13:31
1
$\begingroup$

Instead of having multiple render layer nodes for each scene in the one composite setup, you can setup each scene to render and save it's own file output using it's own colour management settings.

You can share your compositing layout in each scene by creating a group that contains all common nodes, each scene can have the same group added to it's composite nodes, then each scene connects it's render layers and file output to the group sockets.

You can then use a python script to render all scenes instead of manually rendering each scene.

import bpy

for scn in bpy.data.scenes:
    bpy.context.screen.scene = scn
    bpy.ops.render.render(write_still=True)
$\endgroup$
  • 1
    $\begingroup$ This should be the accepted answer as it can be done within Blender. $\endgroup$ – jdk1.0 May 4 '18 at 0:20
3
$\begingroup$

I am reasonably sure this can't be done from within Blender. This is a design flaw in that baking colour transforms isn't dealt with in an optimal manner.

You could however save your images as scene linear and apply the transforms using other tools such as the command line tools from OCIO.

$\endgroup$
  • $\begingroup$ I'm having some very exotic color management settings. Linear won't do. $\endgroup$ – Školstvo Aug 11 '16 at 18:43
  • $\begingroup$ Linear isn't a colour space; it can be considered a base upon which all other transforms can be applied. That is, if you save as a linearized EXR, you can apply precisely the same transforms as you are seeing in Blender directly from the OCIO configuration. $\endgroup$ – troy_s Aug 11 '16 at 18:49
  • $\begingroup$ I need negative values. I can't get them out without Blender color management $\endgroup$ – Školstvo Aug 12 '16 at 8:13
  • 1
    $\begingroup$ I'm doing math. Don't worry, I know what I'm doing. $\endgroup$ – Školstvo Aug 12 '16 at 12:48
  • 1
    $\begingroup$ Outputting the image in OpenEXR using Raw keeps the negative values for me. I'm outputting world space coords and reading them in for a 2D game. $\endgroup$ – jdk1.0 May 4 '18 at 0:01

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.