Blender Filmic

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)