8
$\begingroup$

I stumbled on a trick that while working on one project that will help me with another, but I am not sure why it works.

When I set the color of an emission shader to a saturation of 1 the shader appears that color no matter how strong the brightness is set to. However, if it is set to about .85 or lower, the shader becomes white when very bright much like a light would be in a photo. When you apply a glare filter to the output the glare is the color of the emission node while the object itself is still white.

I understand why this would happen in camera, clipping and all of that. What I don't understand is why this happens for lower saturations in Blender and not higher ones.

$\endgroup$
  • $\begingroup$ I have noticed the same thing, I'm curious as well! $\endgroup$ – VRM Jan 23 '15 at 2:51
7
$\begingroup$

Easiest to explain it with an example. Let's take fully saturated blue. At power 1.0, that is RGB 0.0, 0,0, 1.0. Let's boost power up to 2.0. We now have 0.0, 0.0, 2.0. This can't be display on our monitor, so it clips to 0.0, 0.0, 1.0. Essentially negating the power increase. We have the same blue we started with.

Now let's try 85% saturation, but still at full brightness, emitter power=1.0. That's RGB 0.15, 0.15, 1.0. Let's put the emitter up to 2.0. We now have RGB 0.3, 0.3, 2.0. That clips to 0.3, 0.3, 1.0. See what happened? We raised all the channels, but only R and G had room to go up, so they increase relative to blue, leaving you with a desaturated blue. This doesn't happen with 100% saturation, because R and G are 0 in that case and don't get scaled up when you boost the power.

Btw, on the subject of the glare node, it doesn't clip linearly. I've never looked into what it does exactly, but it does some sort of scaling or clamping to avoid changing saturation or outputting superwhite values. (usually that's done by scaling down all the 3 channels by some identical value that will leave you with brightest channel=1.0)

$\endgroup$
  • $\begingroup$ Nice explanation! Confirms my thoughts. $\endgroup$ – VRM Jan 23 '15 at 3:03
  • $\begingroup$ I forgot that desaturating a color means you are bringing the other values up. Thank you. $\endgroup$ – user1509130 Mar 15 '15 at 23:52
0
$\begingroup$

You can use a custom 3D LUT (lookup table) and use the color management options to have the saturation be more "photorealistic"

User @Troy_s has created a set of custom luts and Open Color IO (OCIO) settings that radically enhance the way the scene's information gets transformed to sRGB. Amongst those options there are different "looks" that will help you control color disaturation as the light levels increase, even in primary colors (pure red, green or blue).

The luts, configuration and instructions can be downloaded here:

https://github.com/sobotka/bassam-test

A detailed post on this issue, and the proposed solution can be found here:

Render with a wider dynamic range in cycles to produce photorealistic looking images

$\endgroup$

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.