declare const _default: "\n\n    // globals\n    var<private> dAlpha: f32 = 1.0;\n\n    // all passes handle opacity\n    #if LIT_BLEND_TYPE != NONE || defined(LIT_ALPHA_TEST) || defined(LIT_ALPHA_TO_COVERAGE) || STD_OPACITY_DITHER != NONE\n        #ifdef STD_OPACITY_TEXTURE_ALLOCATE\n            var texture_opacityMap : texture_2d<f32>;\n            var texture_opacityMapSampler : sampler;\n        #endif\n    #endif\n\n    #ifdef FORWARD_PASS // ----------------\n\n        // globals\n        var<private> dAlbedo: vec3f;\n        var<private> dNormalW: vec3f;\n        var<private> dSpecularity: vec3f = vec3f(0.0, 0.0, 0.0);\n        var<private> dGlossiness: f32 = 0.0;\n\n        #ifdef LIT_REFRACTION\n            var<private> dTransmission: f32;\n            var<private> dThickness: f32;\n        #endif\n\n        #ifdef LIT_SCENE_COLOR\n            var uSceneColorMap : texture_2d<f32>;\n            var uSceneColorMapSampler : sampler;\n        #endif\n\n        #ifdef LIT_SCREEN_SIZE\n            uniform uScreenSize: vec4f;\n        #endif\n\n        #ifdef LIT_TRANSFORMS\n            var<private> matrix_viewProjection: mat4x4f;\n            var<private> matrix_model: mat4x4f;\n        #endif\n\n        // parallax\n        #ifdef STD_HEIGHT_MAP\n            var<private> dUvOffset: vec2f;\n            #ifdef STD_DIFFUSE_TEXTURE_ALLOCATE\n                var texture_heightMap : texture_2d<f32>;\n                var texture_heightMapSampler : sampler;\n            #endif\n        #endif\n\n        // diffuse\n        #ifdef STD_DIFFUSE_TEXTURE_ALLOCATE\n            var texture_diffuseMap : texture_2d<f32>;\n            var texture_diffuseMapSampler : sampler;\n        #endif\n\n        #ifdef STD_DIFFUSEDETAIL_TEXTURE_ALLOCATE\n            var texture_diffuseDetailMap : texture_2d<f32>;\n            var texture_diffuseDetailMapSampler : sampler;\n        #endif\n\n        // normal\n        #ifdef STD_NORMAL_TEXTURE_ALLOCATE\n            var texture_normalMap : texture_2d<f32>;\n            var texture_normalMapSampler : sampler;\n        #endif\n\n        #ifdef STD_NORMALDETAIL_TEXTURE_ALLOCATE\n            var texture_normalDetailMap : texture_2d<f32>;\n            var texture_normalDetailMapSampler : sampler;\n        #endif\n\n        // refraction\n        #ifdef STD_THICKNESS_TEXTURE_ALLOCATE\n            var texture_thicknessMap : texture_2d<f32>;\n            var texture_thicknessMapSampler : sampler;\n        #endif\n        #ifdef STD_REFRACTION_TEXTURE_ALLOCATE\n            var texture_refractionMap : texture_2d<f32>;\n            var texture_refractionMapSampler : sampler;\n        #endif\n\n        // iridescence\n        #ifdef LIT_IRIDESCENCE\n            var<private> dIridescence: f32;\n            var<private> dIridescenceThickness: f32;\n\n            #ifdef STD_IRIDESCENCE_THICKNESS_TEXTURE_ALLOCATE\n                var texture_iridescenceThicknessMap : texture_2d<f32>;\n                var texture_iridescenceThicknessMapSampler : sampler;\n            #endif\n            #ifdef STD_IRIDESCENCE_TEXTURE_ALLOCATE\n                var texture_iridescenceMap : texture_2d<f32>;\n                var texture_iridescenceMapSampler : sampler;\n            #endif\n        #endif\n\n        #ifdef LIT_CLEARCOAT\n            var<private> ccSpecularity: f32;\n            var<private> ccGlossiness: f32;\n            var<private> ccNormalW: vec3f;\n        #endif\n\n        #ifdef LIT_GGX_SPECULAR\n            var<private> dAnisotropy: f32;\n            var<private> dAnisotropyRotation: vec2f;\n        #endif\n\n        // specularity & glossiness\n        #ifdef LIT_SPECULAR_OR_REFLECTION\n\n            // sheen\n            #ifdef LIT_SHEEN\n                var<private> sSpecularity: vec3f;\n                var<private> sGlossiness: f32;\n\n                #ifdef STD_SHEEN_TEXTURE_ALLOCATE\n                    var texture_sheenMap : texture_2d<f32>;\n                    var texture_sheenMapSampler : sampler;\n                #endif\n                #ifdef STD_SHEENGLOSS_TEXTURE_ALLOCATE\n                    var texture_sheenGlossMap : texture_2d<f32>;\n                    var texture_sheenGlossMapSampler : sampler;\n                #endif\n            #endif\n\n            // metalness\n            #ifdef LIT_METALNESS\n                var<private> dMetalness: f32;\n                var<private> dIor: f32;\n\n                #ifdef STD_METALNESS_TEXTURE_ALLOCATE\n                    var texture_metalnessMap : texture_2d<f32>;\n                    var texture_metalnessMapSampler : sampler;\n                #endif\n            #endif\n\n            // specularity factor\n            #ifdef LIT_SPECULARITY_FACTOR\n                var<private> dSpecularityFactor: f32;\n\n                #ifdef STD_SPECULARITYFACTOR_TEXTURE_ALLOCATE\n                    var texture_specularityFactorMap : texture_2d<f32>;\n                    var texture_specularityFactorMapSampler : sampler;\n                #endif\n            #endif\n\n            // specular color\n            #ifdef STD_SPECULAR_COLOR\n                #ifdef STD_SPECULAR_TEXTURE_ALLOCATE\n                    var texture_specularMap : texture_2d<f32>;\n                    var texture_specularMapSampler : sampler;\n                #endif\n            #endif\n\n            // gloss\n            #ifdef STD_GLOSS_TEXTURE_ALLOCATE\n                var texture_glossMap : texture_2d<f32>;\n                var texture_glossMapSampler : sampler;\n            #endif\n        #endif\n\n        // ao\n        #ifdef STD_AO\n            var <private> dAo: f32;\n            #ifdef STD_AO_TEXTURE_ALLOCATE\n                var texture_aoMap : texture_2d<f32>;\n                var texture_aoMapSampler : sampler;\n            #endif\n            #ifdef STD_AODETAIL_TEXTURE_ALLOCATE\n                var texture_aoDetailMap : texture_2d<f32>;\n                var texture_aoDetailMapSampler : sampler;\n            #endif\n        #endif\n\n        // emission\n        var <private> dEmission: vec3f;\n        #ifdef STD_EMISSIVE_TEXTURE_ALLOCATE\n            var texture_emissiveMap : texture_2d<f32>;\n            var texture_emissiveMapSampler : sampler;\n        #endif\n\n        // clearcoat\n        #ifdef LIT_CLEARCOAT\n            #ifdef STD_CLEARCOAT_TEXTURE_ALLOCATE\n                var texture_clearCoatMap : texture_2d<f32>;\n                var texture_clearCoatMapSampler : sampler;\n            #endif\n            #ifdef STD_CLEARCOATGLOSS_TEXTURE_ALLOCATE\n                var texture_clearCoatGlossMap : texture_2d<f32>;\n                var texture_clearCoatGlossMapSampler : sampler;\n            #endif\n            #ifdef STD_CLEARCOATNORMAL_TEXTURE_ALLOCATE\n                var texture_clearCoatNormalMap : texture_2d<f32>;\n                var texture_clearCoatNormalMapSampler : sampler;\n            #endif\n        #endif\n\n        // anisotropy\n        #ifdef LIT_GGX_SPECULAR\n            #ifdef STD_ANISOTROPY_TEXTURE_ALLOCATE\n                var texture_anisotropyMap : texture_2d<f32>;\n                var texture_anisotropyMapSampler : sampler;\n            #endif\n        #endif\n\n        // lightmap\n        #if defined(STD_LIGHTMAP) || defined(STD_LIGHT_VERTEX_COLOR)\n            var<private> dLightmap: vec3f;\n            #ifdef STD_LIGHT_TEXTURE_ALLOCATE\n                var texture_lightMap : texture_2d<f32>;\n                var texture_lightMapSampler : sampler;\n            #endif\n        #endif\n    #endif\n\n    // front end outputs to lit shader\n    #include \"litShaderCorePS\"\n";
export default _default;
