10
$\begingroup$

Most of you probably/hopefully heard of the Linear Workflow before. I've been doing a lot of research lately in regard to this topic and I am happy to say that I think I finally understood the theory of it. But my problem is that I am not really sure how to make use of it in practice now.

This is an image that shows the difference between linear and non-linear workflow:

enter image description here

Images from greyscalegorilla.com

To sum all this up, linear workflow helps you to get better and more realistic render results.

What I want to know is, how do I work in Blender with this technique? I read about Gamma Correcting my image textures before importing them into Blender.

Is it necessary to do that in Photoshop or can I simply add a gamma correction in the Node Editor? And, when do I add the final Gamma adjustment to my render, in post processing? It's just not clear to me at this point.

Here are some resources about the issue:

$\endgroup$
5
  • $\begingroup$ You might be interested in the following document about the Color Management added in 2.64: wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.64/… $\endgroup$
    – CodeManX
    Commented Aug 20, 2014 at 19:04
  • $\begingroup$ @CoDEmanX Hey dude, I already read this, but i don't get it. Does that mean, Cycles and Blender are doing the linear workflow for me already? $\endgroup$ Commented Aug 21, 2014 at 7:17
  • $\begingroup$ afaik yes, it's all handled for you. $\endgroup$
    – Greg Zaal
    Commented Aug 21, 2014 at 7:54
  • $\begingroup$ @GregZaal at least for the color picker in Blender its safe to say that the colors are gamma corrected, since its written in the panel "(gamma corrected)", but somehow I am not to sure about it regarding the textures. I found this blender docu: de.wikibooks.org/wiki/Blender_Dokumentation:_linearer_Workflow But it's not up to date i guess, since they are talking about version 2.48 $\endgroup$ Commented Aug 21, 2014 at 8:34
  • $\begingroup$ Is this solved? $\endgroup$
    – J Sargent
    Commented Jan 10, 2015 at 19:27

2 Answers 2

11
$\begingroup$

By default, Blender is a scene referred radiometrically linear reference space model.

This means that, when Cycles is selected as the renderer, values are radiometrically linear ratios that extend from zero to infinity.

The subject of color, color management, scene and display referred, and other such topics is immensely vast, far too vast for a simple answer here.

The short answer to your query however, is that Cycles is already a scene referred renderer, and no special effort is required to enable this aspect. More specifically, if you load an sRGB display referred image as a texture, it will be automatically linearized to display linear. While not scene linear, this permits textures to behave within a scene referred system.

Upon loading images in common formats such as JPEG, TIFF, PNG, etc. you should not adjust your image nor adjust your output. The linearization happens at the architectural level, and is correctly formatted for output.

To fully harness a scene referred model though, one should begin to round out their knowledge of color. A wonderful entry point might be the Visual Effects Society paper written by Jeremy Selan titled Cinematic Color: From Your Monitor to the Big Screen.

$\endgroup$
3
  • $\begingroup$ Thanks for this! That means: imported textures are not linearized for cycles? $\endgroup$
    – p2or
    Commented Jan 15, 2015 at 9:07
  • $\begingroup$ For me it worked out just like you said. I gamma corrected my image textures, but not the colors i picked fom the color picker. What i did in the end was increasing the gamma output up to 2.2 instead of 1. I was very happy with the outcome. $\endgroup$ Commented Jan 16, 2015 at 11:26
  • 3
    $\begingroup$ If you load an image, it is assumed to be sRGB and applies the inversion of the sRGB transfer curve to convert the image to display linear. You should not require any mangling to get to correct results, and if you are, the chances are extremely high that you are breaking all of the scene linear rendering patterns. $\endgroup$
    – troy_s
    Commented Jan 17, 2015 at 5:58
2
$\begingroup$

@poor This was my solution. Before adding an image texture into my shader, I did some gamma correction.

Don't forget to increase your gamma output after rendering under scene -> color management in your properties. I am still not sure about if it was the right way, but it did a good job at the end.

$\endgroup$
2
  • $\begingroup$ @poor no problem dude. Let me know if this one worked out for you as well and in case it doesn't, please let me know how you doing it. $\endgroup$ Commented Jan 19, 2015 at 13:58
  • 4
    $\begingroup$ Again, assuming the image is a generic image, you should not adjust the intensity curves. This all happens via OCIO, and changing the curves will break the radiometric linear data, nor adjust the output transfer. $\endgroup$
    – troy_s
    Commented Jan 19, 2015 at 16:26

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .