Blender Filmic

Filmic is a color management replacement for Blender default color management by Troy James Sobotka.

download it from here https://github.com/sobotka/filmic-blender

This thread is replacing my old one https://blenderartists.org/forum/showthread.php?416394-Andrew-Price-did-it-again-! the old thread will be closed.
The tecnical aspect of color management i do not know so much about, For me it helped my renderings alot.
I came from MODO, and MODO have the same “problem” you have to pump in light in form of artificial light sources.

Please do not let this tread be about person exept from Sobotka of course. If you post here please be factual, if that is the correct english word. Is filmic something that you will use, or is it notting for you? Is there other or better solution to Blenders “light problem” than Filmic ? Perhaps you have some before or after images ?

Esimacio

I’m planning to use filmic, but I don’t want to have to alter the directory structure of the blender package. Once filmic is just a regular add-on, or just a default part of blender, I’ll use it all the time. It seems obviously better than what came before.

I’m quite keen on it, though I have an active interest in photo-real rendering.

I don’t have any ‘before’ images, but I have a couple of tests I made earlier.

One with V-Ray:- http://stoneage.cgsociety.org/art/blender-v-ray-waleswales-linus-cabinet-1700505

One with Yafaray:-
http://stoneage.cgsociety.org/art/blender-yafaray-chess-pieces-1416323

The V-Ray render uses HDRI lighting, while the Yafaray render is simpler and more conventional, using Yafaray’s Sunsky2, and a large spot for the highlights. The background is my own photo.

It was useful to able to pull the linearised wider dynamic range from the Filmic transform into the composite to match the background before finalising the composite with the render passes. You don’t have to use the contrast presets, adding a Colour Balance ASC-CDL node instead gives a great deal of flexibility.

You can really take advantage of good quality HDR lighting, it gives a smooth gradation in the highlights(take another look at AP’s before and after images), and I feel it makes it easier to create good materials that can be shared into other lighting set ups without having to make changes to match the new lighting, so it could be a time saver if you move assets around.

I like it, and haven’t found any disadvantages yet :slight_smile: Bear in mind the artist also had some input in creating these renders, and it’s just as easy for a bad artist to make a crappy render with Filmic LUTs as it is with any alternative colour management.

(cgsociety insists on .jpegs, so apologies in advance for any compression)

Very nice images, specially the last one. I tried Filmic in an outdoor images without any success, probably user error :slight_smile:

@esimacio: Yeah, when you change color space you need to pretty much change the settings of the whole scene, but I’m convinced it’s better, without a doubt.

Some videos about Filmic



https://www.youtube.com/watch?v=u3_T6zV6LUY&t=63s (russian language)
https://www.youtube.com/watch?v=m9AT7H4GGrA&t=1299s (A.Price)
https://www.youtube.com/watch?v=aByZrsE1J0w (G.Alexandrov) Not about Filmic, but about color management in blender

I agree with henrymop.
Moving to filmic means also changing your workflow.

For me (that at the moment I’m doing mostly Archviz) filmic makes a huge difference, especially in interior scenes.
It boosts realism a couple of levels up. Now the renders start to have the pleasing effects that you get when you see Corona or Fstorm renders and the most important part is not the final image, is that setting up lights has some logic behind it, now.
Materials behave consistently in different scenes and lighting scenarios and tweaks are generally more predictable.

My only problem so far, that is of course a “Cycles problem” not a filmic problem, is that without the “shitty hacks” AO. Clamping, Caustics killing etc (all these counter act filmics greatness) render times and noise levels increased.

I’m afraid at least for interiors I have to invest to more powerfull hardware until there are some major improvements in Cycles engine.

and here two samples of filmic in action.




Here are some points about filmic I have found so far. It would be great if somebody more knowledgeable can correct / expand on these.

  • Filmic offers two distinct advantages:

1.) It lets you see a wider spectrum of values in your viewport. This lets you set higher, more realistic and extreme values for lights and material albedos which results in more realistic scenes.

2.) It desaturates the highlights which happens in camera response and also in human vision.

  • After the final render you can choose to discard the filmic transform by saving to a linear image format like exr. This gives you the raw render buffer which can be further processed and/or tonemapped using other applications. Basically filmic just helped you see the scene better and set it up in a more realistic way.

  • You can choose to keep filmic’s logarithmic mapping and desaturation of highlights by saving to an 8 bit format like png or jpg. Before saving you can further grade the image blenders compositor using the ASC-CDL color balance node.

  • If you saved to linear exr you can still apply the filmic transform in third party applications like Nuke or Natron via OCIO.

  • One possible workflow using a photographic approach works like this:

Set up your lights.
Place a plane with a diffuse shader at 18% grey (R,G,B = 0.18, do not use HSV value 0.18!) near your subject.
Set filmic to “false colour” for the exposure correction.
Adjust your lights so the grey plane shows as grey in false colour mode while keeping the lights ratios to each other.
This means 18% reflection (albedo) will be exposed to 50% grey in display.

  • Filmic is not necessarily a final tonemap! It helps you set up the scene better, more of a viewport enhancement. You can choose to keep the transform if you like the look, you can expand on the look by grading it (bringing back whites in the highlights and saturation if you so desire) or discarding the transform altogether only having it used as a “crutch” for visualizing your scene data.

  • With filmic you can push you light energy higher which in turn affects the albedo you can use in materials. Physically plausible values are more important than before: and albedo of 50% is already really high in the real world!

Questions:

  • When grading in a third party application, what is the correct order for grading? Grade the linear data before transforming to filmic or transform first, then grade? Or is this “artistic choice”? At which point would operations like depth blur or glow be applied? I guess on the linear data?

  • Can the exposure correction be applied via the film/exposure setting in the render tab instead of adjusting individual lights?

  • How do you set up your light in a coherent fashion? AFAIK 1 unit equals 1 watt, or watt/m2 in area lights, thats at least a start. Sun lamp at around 1000 and sky at 70 units if what I read is correct (very rough cause it depends on a lot of factors, but that’s about the ratio). How do you deal with / calibrate HDRI lighting?

Again, I don’t pretend to have all the answers or even a single one, just wanted to raise some points for discussion and further clarification.

Question for you: do you have a source for these values? I’ve been looking for this bit of info…

some light here: https://docs.blender.org/manual/en/dev/render/cycles/nodes/types/shaders/emission.html?highlight=watt

Source:

Sorry for being so lazy :slight_smile:

So to simulate direct overhead sunlight, you’d use a strength value of 1050 for the sun lamp, and a strength value of 70 for the background

thanks a lot sir!

If one heeds the outline of the ACES protocol regarding Look Modification Transforms (LMTs), the proper place to do transforms is on the scene referred data. There are a very few edge cases where you may need display referred output. An example might be pushing saturation back into highlights.

Keeping all of the data in the scene referred domain keeps things tidy for other transforms that can use those ratios such as HDR10 or DolbyVision.

Exposure correction is baked into the data of an EXR if using the Film panel. Via the Color Management panel, the exposure is temporal and isn’t baked in.

Assuming you are adjusting all of your light ratios identically, exposure is the same as adjusting lights. If you adjust even one light differently, then it must be done on the lights.

Aligning HDRIs is quite trivial if you use False Colour and assuming the HDRI is correct. A diffuse plane at 0.18 albedo becomes a grey card. Face it to camera roughly at the point you want to expose and simply adjust strength until you see the magic grey band appear in False Colour. That should get you reasonably close to where you need to be, subject to creative exposure choices.

In terms of aligning existing CGI lamps to an HDRI, the challenge would be trickier. If you have gathered data via a still from a scene with a grey card, it could be easier. Perhaps someone has advice on setting aligned values between lamps and an HDRI without reference imagery?

…“shitty hacks” not withstanding, those are beautiful renders! :yes:
Maxwell/VRay quality, imho. :wink:

These are incredible. they look like photo. They could go straight into the IKEA Catalogue. I know it is much to ask, but would be very nice to see one og those without using filmic

Yeah, they look almost too real…hmmmmm.

Just kidding. I believe they were rendered in Blender Cycles using Filmic.
Must be some magic involved, though. :stuck_out_tongue:

Cross-posting with the other thread:

I’d like to mention that you can keep clamping, just be aware of what clamping does. It cuts off the maximum amount of energy that a path can produce. Fireflies are results of unlikely paths with very high energy.

For illustration, imagine the following infinite series, made up of the numbers 1,2,3,4,5 and 100:

[1,2,3,4,100,1,2,3,4,5,1,2,3,4,5…

In this series, the 100 occurs in place of a 5 every 1000 steps, but it just so happens that it occurs right at the beginning.

Imagine you wanted to compute the average of this series (and you didn’t know the properties I told you about).

Taking the first four samples: (1+2+3+4)/4 = 2.5
Taking the first five samples: (1+2+3+4+100)/5 = 27.5
Taking the first six samples: (1+2+3+4+100+1)/6 = 18.5

Taking the first 50 sampeles: … = 4.9
Taking the first 100 samples: … = 3.96
Taking the first 500 samples: … = 3.192
Taking the first 1000 samples: … = 3.095 (the true value!)
Taking the first 1005 samples: … = 3.189 (oh no, we hit another 100)

Finally, after a million samples, you get approximately 3.095, at which point you should be satisfied and move on with your life.

If you clamped the values at 50:

5 samples: 12.0
50 samples: 3.9
100 samples: 3.45
1000 samples: 3.045

You will never get the correct result (instead you’ll get 3.045), but you’ll be closer after fewer samples

If you clamped the values at 10:
5 samples: 4.0
50 samples: 3.1
100 samples: 3.05
1000 samples: 3.005

Again, the expected result is now lower, but at least it’s not extremely far off after only 50 samples.

The question you need to ask yourself is do I care about the difference?

The direct clamping will affect everything, which means your lights won’t do their job anymore, if they are brighter than the clamp value. The indirect clamping will only affect bouncing/transmitted light, so it will cut off light reflected from surfaces and caustics. Filmic gives you a higher dynamic range, so you cannot clamp as low as before, without a directly visible impact (surface brightness is cut off). The idea that you can’t clamp at all with filmic is a misconception, however. You need to play around with clamp values until you find the value for your scene.

Troy keeps mentioning mastering to HDR, but it’s probably safe to say that most people in the community don’t have HDR devices, so they can’t judge HDR output anyway. If in the future it turns out you chose a clamp value that hurts HDR, you’ll just have to re-render. (Otherwise, you could re-use the HDR frames you rendered)

With this filmic double threads I dunno anymore what thread to follow and where to reply XD

Fine and dandy and I agree that I’ve seen peps getting too much paranoid with filmic ala “It’s everything broken, we will all die!”

It’s kinda obvious (for who knows what clamping does) that the higher is the clamp value (closer to the maximum energy value), the more accurate is the global result (at high samples) at the cost of the purpose of clamping use itself.
And that the clamping value is an empiric per case value.
For example I can bet my last dime on the fact that many people just set clamping at a value they’ve seen on some tutorial such as “How to fix fireflies” or “How to speedup your interiors’ render”.

But IMO this speech is valid from a single pixel’s point of view only.
At least your explaination could result useful for those who want to know how clamping works and get deeper.
I keep myself against the clamping use, it’s like hiding the dust under the carpet.
But again you peps think what you want and do what you think. I get a beer.

hi,
there is no double thread realy, because the other one I have asked that they closed. I say also there that you please use this one to discuss filmic. I am so sorry for the turmoil I created with the AP thread. It was personal verbal attacks on me and on AP on the my first thread. I hope that in this thread we can disuss Filmic and not persons.
Thank you also for your contribution this this thread.

very well explained BeerBaron, you know your stuff. It is very technical for me tough :slight_smile:
When you say most people don’t have HDR devices, I am not sure what you mean. Isn’t a DSLR Camera a HDR device?
Most people do have that.




Here are 3 Images, the first one (dark) is with standard sRGB, the second one is with Filmic, the third one is sRGB but with higher exposure and higher gamma

This is probably a personal preference but for me I like the second one with Filmic Color management