How is dielectrics energy conservation done with thin-film interferences?

Cycles seems to use precomputed directional-albedo LUTs to compensate for the missing energy in microfacet BSDFs.

For dielectrics, the data of those LUTs (3D LUT: roughness, cos theta, IOR) is precomputed with the classic dielectric fresnel reflection term i.e. you evaluate the directional albedo of the BSDF with a standard dielectric fresnel term. That directional albedo is then used to compensate for the energy loss in a dielectric microfacet BSDF that also uses a “standard dielectric fresnel reflection term”.

But thin-film interferences are implemented by replacing the fresnel term of the BSDF. The precomputed LUT fresnel term doesn’t match the BSDF fresnel term (dielectric fresnel vs. thin-film fresnel) anymore and so energy compensation should be broken?

Yet Cycles doesn’t seem to have any issues with energy compensation on a BSDF with thin-film interferences. How is it done?

2 Likes

@lukasstockner97 Would be one of the people to talk to about this.

I have tagged them so they should be notified of this thread and can hopefully answer this when they have some spare time.

2 Likes