Home Marmoset

Occlusion affects direct lighting?

Hey EQ, thought you might like to see this
https://github.com/KhronosGroup/glTF/issues/915#issuecomment-460360473

I wonder if this assessment is accurate? Seems to be the incorrect way of applying ao.

We're using glTF extensively here for model output, and it's taking off as a universal delivery format. But the realtime renderers are pretty inconsistent. Thus the interest in figuring out what the ground truth should be. 

I'm working a lot with the Khronos and BabylonJS teams on export and rendering issues these days.

Anyhow, hope this helps you guys. 

Replies

  • EarthQuake
    Hey EQ, thought you might like to see this
    https://github.com/KhronosGroup/glTF/issues/915#issuecomment-460360473

    I wonder if this assessment is accurate? Seems to be the incorrect way of applying ao.

    We're using glTF extensively here for model output, and it's taking off as a universal delivery format. But the realtime renderers are pretty inconsistent. Thus the interest in figuring out what the ground truth should be. 

    I'm working a lot with the Khronos and BabylonJS teams on export and rendering issues these days.

    Anyhow, hope this helps you guys. 
    This is not entirely correct. For Toolbag:

    • AO affects ambient image-based diffuse lighting (ie: Sky lighting)
    • AO does not affect direct diffuse lighting
    • AO does not affect image-based reflections / specular
    • AO does not affect direct reflections / specular
    It looks like that list suggests AO is multiplied on IBL reflections in some of these engines, I would be somewhat dubious of that claim so you should double check. In general, this shouldn't happen for PBR reasons and most engines have some sort of screen space reflection technique instead of reflection occlusion. Though if we're being pedantic, nothing about AO is physically correct lol.

    We have a cavity input as well, which affects both ambient and direct lighting and has controls for diffuse and specular intensity respectively. Generally speaking this should be used for micro-occlusion rather than large scale occlusion.

    Since pure metals have 0 diffuse, AO doesn't affect metals.
  • Eric Chadwick
Sign In or Register to comment.