KhronosGroup / ToneMapping

A collection of tone mappers for the display of 3D graphics
Apache License 2.0
37 stars 0 forks source link

In light-filled scenes, objects appear as coloured contours in Khronos PBR Neutral #5

Open emadurandal opened 1 month ago

emadurandal commented 1 month ago

Hi, I implemented several tone mappings, including Khronos PBR Neutral, in my own web3D library. I was comparing and evaluating them and found that Khronos PBR Neutral showed distinctive results in certain scenes.

In light-filled scenes, only with Khronos PBR Neutral do objects appear as distinctive coloured contours and stand out in the white light.

image image image image

The following is a more obvious extreme example. image image image image

I like Khronos PBR Neutral because it preserves saturation very well in general scenes, but this phenomenon is my only concern.

What should I think about this characteristic colour contour in light-filled scenes? (This phenomenon doesn't occur with other tone mappings)

I would be happy to know the appropriate scope and conditions of use of Khronos PBR Neutral.

For reference, my implementation of the Web3D library can be found at the following URL: https://editor.librn.com/

emadurandal commented 1 month ago

Incidentally, in my implementation I have the Bloom effect enabled before the tone map, but maybe it is not compatible with this Bloom.

elalish commented 3 weeks ago

Excellent examples, thank you! Indeed, you have identified the biggest tradeoff between Filmic tone mappers (like ACES, AgX) and PBR Neutral: handling of strongly HDR scenes vs saturation preservation. I don't believe the best of both worlds is possible (at least I haven't found a way). For strongly HDR scenes like you show, a Filmic tone mapper is a much better choice, as they are designed for this use case.

PBR Neutral is designed for "well-exposed" scenes - think product photography - where HDR comes in small specular highlights and lighting is not strongly colored.

emadurandal commented 3 weeks ago

Thanks for the good guidelines on PBR Neutral. I will use several tone mappings depending on the scene. You may close this Issue. Thank you.

elalish commented 3 weeks ago

No problem, I think I'll actually leave this open to help others, especially given the nice visuals you provided. We should give more visual examples here anyway.

sobotka commented 1 week ago

Necromancing this one…

Given that all of visual cognition is predicated on a lower order differential system, this is technically a bug, and we probably can fix it.

Happy to chat off list about this Emmett, as I believe there is a solution.