declare const _default: "\n\n#if LIT_OCCLUDE_SPECULAR != NONE\n    #ifdef LIT_OCCLUDE_SPECULAR_FLOAT\n        uniform float material_occludeSpecularIntensity;\n    #endif\n#endif\n\nvoid occludeSpecular(float gloss, float ao, vec3 worldNormal, vec3 viewDir) {\n\n    #if LIT_OCCLUDE_SPECULAR == AO\n        #ifdef LIT_OCCLUDE_SPECULAR_FLOAT\n            float specOcc = mix(1.0, ao, material_occludeSpecularIntensity);\n        #else\n            float specOcc = ao;\n        #endif\n    #endif\n\n    #if LIT_OCCLUDE_SPECULAR == GLOSSDEPENDENT\n\n        // approximated specular occlusion from AO\n        // http://research.tri-ace.com/Data/cedec2011_RealtimePBR_Implementation_e.pptx\n        float specPow = exp2(gloss * 11.0);\n        float specOcc = saturate(pow(dot(worldNormal, viewDir) + ao, 0.01*specPow) - 1.0 + ao);\n\n        #ifdef LIT_OCCLUDE_SPECULAR_FLOAT\n            specOcc = mix(1.0, specOcc, material_occludeSpecularIntensity);\n        #endif\n    #endif\n\n    #if LIT_OCCLUDE_SPECULAR != NONE\n        dSpecularLight *= specOcc;\n        dReflection *= specOcc;\n\n        #ifdef LIT_SHEEN\n            sSpecularLight *= specOcc;\n            sReflection *= specOcc;\n        #endif\n    #endif\n}\n";
export default _default;
