Afrikaans
Akan
Albanian
Amharic
Arabic
Armenian
Azerbaijani
Basque
Belarusian
Bemba
Bengali
Bihari
Bosnian
Breton
Bulgarian
Cambodian
Catalan
Cebuano
Cherokee
Chichewa
Chinese (Simplified)
Chinese (Traditional)
Corsican
Croatian
Czech
Danish
Dutch
English
Esperanto
Estonian
Ewe
Faroese
Filipino
Finnish
French
Frisian
Ga
Galician
Georgian
German
Greek
Guarani
Gujarati
Haitian Creole
Hausa
Hawaiian
Hebrew
Hindi
Hmong
Hungarian
Icelandic
Igbo
Indonesian
Interlingua
Irish
Italian
Japanese
Javanese
Kannada
Kazakh
Kinyarwanda
Kirundi
Kongo
Korean
Krio (Sierra Leone)
Kurdish
Kurdish (Soranรฎ)
Kyrgyz
Laothian
Latin
Latvian
Lingala
Lithuanian
Lozi
Luganda
Luo
Luxembourgish
Macedonian
Malagasy
Malay
Malayalam
Maltese
Maori
Marathi
Mauritian Creole
Moldavian
Mongolian
Myanmar (Burmese)
Montenegrin
Nepali
Nigerian Pidgin
Northern Sotho
Norwegian
Norwegian (Nynorsk)
Occitan
Oriya
Oromo
Pashto
Persian
Polish
Portuguese (Brazil)
Portuguese (Portugal)
Punjabi
Quechua
Romanian
Romansh
Runyakitara
Russian
Samoan
Scots Gaelic
Serbian
Serbo-Croatian
Sesotho
Setswana
Seychellois Creole
Shona
Sindhi
Sinhalese
Slovak
Slovenian
Somali
Spanish
Spanish (Latin American)
Sundanese
Swahili
Swedish
Tajik
Tamil
Tatar
Telugu
Thai
Tigrinya
Tonga
Tshiluba
Tumbuka
Turkish
Turkmen
Twi
Uighur
Ukrainian
Urdu
Vietnamese
Welsh
Wolof
Xhosa
Yiddish
Yoruba
Zulu
Before starting to explore the post-processing chain, it is important to draw the distinction
between the scene referred and display referred formats. so imagine you have just rendered your
shiny new lighting setup in Blender and what you see on screen actually has two layers to it.
a deeper layer that we cannot see directly on our screens is the data of our render engine, of Cycles,
the unbounded light intensity is stored in the 32-bit format and then the second layer is what
get transferred to our display or we actually see on screen. that is called a display referred image.
to better get the difference between these two types of image and how it all ties with
the post-processing chain, let's first save our image as PNG or jpeg or any other 8-bit format
with 8-bit holding a display referred data in this case, so let's go with any 8-bit format
like jpeg, PNG, Tiff, by saving the image in one of these formats we will effectively bake the
color management within the image pixels, it will be the depth of the deeper data layer,
the layer that held all the high dynamic range intensities of light in your scene.
actually it's pretty easy to prove that there is some range of intensities underneath what is
displayed, let's open our color management tab to get access to exposure slider, it will come
in handy in just a moment, now if we sample the hottest spot in our render probably generated
by the sun lamp via right clicking on it you will see that there are intensities there that
go well beyond one, for example the red channel is as bright as 35 units and these units are not the
display brightnesses that go from black to white, these values are the unbounded brightnesses of
the actual 3D scene, technically it can go from zero all the way to infinity and beyond while
our miserable Rec 709 displays are limited to go from 0 to 1 in terms of intensity and that's it.
now watch the hot spot, it's a really hot bunch of pixels indeed, now if we start killing the exposure
notice that the hotspot is still hot! why is it so?! :) because it had the higher intensities right
of the start, the intensity that we have sampled before and if we sample it now it won't change,
the red channel will still peak around the 35 to 40 units depending on where you sample it.
so even after the reduction of the exposure in the color management tab, the super bright scene
referred light values still result in super bright pixels on display after it gets transferred to
our display via the color management system. the CM letters here stand for color managed.
so that's why this part doesn't want to get dimmed even when we
reduce the exposure, because it holds an enormous punch in the scene referred realm.
all right! so what what would be the right way to save the entire dynamic range of this image then?
there is a special type of image format meant for storing such data, the scene referred data, glorious
open exr for example, this format can store 32-bit data with floating point accuracy or half floating
point accuracy if you want to save on the file size, it has a bunch of very potent compression
codecs that we won't go into right now, but the the main thing about it (let's keep it short) is that
it can save the whole range of the scene referred unbounded image data or light data in other words.
and you guessed it, we will need this 32-bit image fidelity in post processing, if we're
gonna save the file just like we did and post process it afterwards.
to drive it home let's compare 8-bit display referral and 32-bit scene referred formats in
Blender compositor and see how it all works. so I'm gonna open the new blend file, toggle the
compositor right away, N to remove the right two shelf check Use Nodes, what else... maybe for
convenience's sake I'll create two windows, the bottom one will be the image editor where we will
preview our compositing chain, now the resolution should be set to 1920 by 1080 pixels just like our
original scene, it's the best practice to make sure these two things align perfectly, now Ctrl
Shift clicking on the render layer to create the viewer node and then opening the viewer node in
the image editor and this is our basic setup for post processing, now instead of using the render
layers as if we have just rendered something, let's actually load our 8-bit image via the image node.
so here we have two of these guys, the PNG and the exr, let's start with the PNG one, so I'm
connecting its image output to the viewer and you tell me what did go wrong with the image?
can you see this dusty screen effect like the image got flattened? that's because the filmic
view transform was applied twice technically, first we baked the display transform right into an 8-bit
image, a PNG in our case and then we applied the display transform for the second time in this
new blender scene, hence the weird flattening of the contrast, on top of that we have lost all the wide
dynamic range on saving in the PNG format. now the litmus test! :) the reduction of the exposure.
remember we had the area of the higher intensities that spanned across the wide dynamic range and
went all the way to 35 and above? yeah, forget about it, it was clipped to 1 on saving the
PNG file, it was clipped to display. sadly for us 3D lighting artists the scene referred lighting
data is no more. we technically can do nothing about it and to make it even more sad it will definitely
affect our post processing options as well. let's demonstrate it by throwing in the glare node.
the way the glare effect works in Blender is that it detects the very hot scene referred pixels with
the intensities of 5, 10, 15, you name it and then it blooms these higher intensity pixels, there are no
more such pixels there they were all trashed, so there is no more glare as simple as that.
thankfully we have also saved the 32-bit open exr with the unbounded light values, the scene referred
values, which is important, so let's see how it behaves instead. let us switch our image to the EXR
and obviously the first thing everyone gonna do is sample the bright pixels and... woo! we've got our
high intensities back :) [sings: hello brightness my old frieeeend] ...it's good to see them back!
you can sample any bright area to just double check if everything is all right,
so that is the result that corresponds 100% to the Blender render that we made in the
previous tutorial, that is the the wide range of lighting values intact, we can prove it by our
exposure litmus test, the super bright bunch of pixels generated by the lens flare... it is
still there. now technically this 32-bit image file should hold all the intensities we need for post
processing, the full image data intact and so we can go to building our universal post processing
chain, but first for the sake of completing our little experiment let's drop in the glare node.
back into compositor, Shift A, Filter, Glare. now it should absolutely catch those outstanding scene
referred RGB pixels that go above the threshold of 1 in terms of their intensity and so that
is the major difference between saving the image before post-processing it in the 8-Bit format such
as PNG, jpeg or Tiff or utilizing one of the scene referred formats such as open exr which is 32-bit
by default. the scene referred image formats were created for the computer graphics work,
for storing the light values required for post processing, so that naturally should be our choice
and incidentally to double down on this point when we hit F12 to render stuff out in Blender
we render it internally precisely in the 32-bit scene referred format (just to clarify things).
here I want to pause really quickly and talk about the alternative backdrop preview options. some
people like to preview the Blender compositor output not in the separate window such as the
image editor at the bottom of the screen but right within the Blender compositor one.
in order to see our stuff right there we just need to check the backdrop button at
the top of the UI then this little preview can be resized with help of the V or alt V
shortcuts or panned around while holding Alt and using the middle mouse button,
what we see in the backdrop is actually the output of the viewer node, so if you don't see anything
you just need to add the viewer first. if it feels more convenient for you to preview the compositing
chain right in this viewport, I respect your choice obviously :) don't forget about the viewer though.
my personal preference is quite fluid and it depends on my mood and on the project,
fluctuates quite a bit, but I think my current vibe would dictate me to use the image editor instead.
now technically nothing prevents us from jumping straight into building the post-processing chain.
Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.