void CameraFadeFarAlpha_float( // Base inputs float3 positionWS, float CameraInversFarFadeRange, float CameraFarFadeDist, float AlphaIN, float AlphaTh, out real Alpha ) { #if !defined(SHADERPASS_SHADOWCASTER) //Alpha = AlphaIN * saturate( (positionSP.w - CameraFadeDist) * CameraInversFadeRange - Dither32(positionSP.xy / positionSP.w * _ScreenParams.xy ) ); Alpha = AlphaIN; #else float distanceToCam = distance(positionWS, GetCameraPositionWS() ); //float a = saturate((distanceToCam - CameraFadeDist) * CameraInversFadeRange) * saturate((CameraFarFadeDist - distanceToCam)* CameraInversFarFadeRange); float a = saturate((CameraFarFadeDist - distanceToCam)* CameraInversFarFadeRange); Alpha = AlphaIN * saturate(a+AlphaTh); #endif }