declare const _default: "\n// pow(x, 5) implemented as multiplies to avoid the log2/exp2 pair pow compiles to\nfn pow5(x: f32) -> f32 {\n    let x2: f32 = x * x;\n    return x2 * x2 * x;\n}\n\n// Schlick's approximation\nfn getFresnel(\n        cosTheta: f32,\n        gloss: f32,\n        specularity: vec3f\n    #if defined(LIT_IRIDESCENCE)\n        , iridescenceFresnel: vec3f,\n        iridescenceIntensity: f32\n    #endif\n) -> vec3f {\n    let fresnel: f32 = pow5(1.0 - saturate(cosTheta));\n    let glossSq: f32 = gloss * gloss;\n\n    // Scale gloss contribution by specularity intensity to ensure F90 approaches 0 when F0 is 0\n    let specIntensity: f32 = max(specularity.r, max(specularity.g, specularity.b));\n    let ret: vec3f = specularity + (max(vec3f(glossSq * specIntensity), specularity) - specularity) * fresnel;\n\n    #if defined(LIT_IRIDESCENCE)\n        return mix(ret, iridescenceFresnel, iridescenceIntensity);\n    #else\n        return ret;\n    #endif\n}\n\nfn getFresnelCC(cosTheta: f32) -> f32 {\n    let fresnel: f32 = pow5(1.0 - saturate(cosTheta));\n    return 0.04 + (1.0 - 0.04) * fresnel;\n}";
export default _default;
