diff --git a/enbseries.ini b/enbseries.ini index 3c85e4d..1409ddb 100644 --- a/enbseries.ini +++ b/enbseries.ini @@ -31,8 +31,8 @@ NightTime=1.0 [ADAPTATION] AdaptationSensitivity=0.65 AdaptationTime=3.0 -ForceMinMaxValues=false -AdaptationMin=0.0 +ForceMinMaxValues=true +AdaptationMin=0.05 AdaptationMax=1.0 [DEPTHOFFIELD] @@ -64,14 +64,14 @@ AmountInteriorNight=1.0 [SKY] IgnoreWeatherSystem=true Enable=true -GradientIntensityDawn=0.81 -GradientIntensitySunrise=0.95 -GradientIntensityDay=1.0 -GradientIntensitySunset=0.96 -GradientIntensityDusk=0.84 -GradientIntensityNight=0.75 -GradientIntensityInteriorDay=1.0 -GradientIntensityInteriorNight=0.66 +GradientIntensityDawn=0.66 +GradientIntensitySunrise=0.92 +GradientIntensityDay=1.37 +GradientIntensitySunset=0.870001 +GradientIntensityDusk=0.750001 +GradientIntensityNight=0.94 +GradientIntensityInteriorDay=1.32 +GradientIntensityInteriorNight=0.79 GradientDesaturationDawn=0.0 GradientDesaturationSunrise=0.0 GradientDesaturationDay=0.0 @@ -81,97 +81,97 @@ GradientDesaturationNight=0.0 GradientDesaturationInteriorDay=0.0 GradientDesaturationInteriorNight=0.0 -GradientTopIntensityDawn=1.0 -GradientTopIntensitySunrise=1.0 -GradientTopIntensityDay=1.0 -GradientTopIntensitySunset=1.0 -GradientTopIntensityDusk=1.0 -GradientTopIntensityNight=1.0 -GradientTopIntensityInteriorDay=1.0 -GradientTopIntensityInteriorNight=1.0 -GradientTopCurveDawn=1.0 -GradientTopCurveSunrise=1.0 -GradientTopCurveDay=1.0 -GradientTopCurveSunset=1.0 -GradientTopCurveDusk=1.0 -GradientTopCurveNight=1.0 -GradientTopCurveInteriorDay=1.0 -GradientTopCurveInteriorNight=1.0 -GradientTopColorFilterDawn=1, 1, 1 -GradientTopColorFilterSunrise=1, 1, 1 -GradientTopColorFilterDay=1, 1, 1 -GradientTopColorFilterSunset=1, 1, 1 -GradientTopColorFilterDusk=1, 1, 1 -GradientTopColorFilterNight=1, 1, 1 -GradientTopColorFilterInteriorDay=1, 1, 1 -GradientTopColorFilterInteriorNight=1, 1, 1 +GradientTopIntensityDawn=0.77 +GradientTopIntensitySunrise=0.82 +GradientTopIntensityDay=1.430001 +GradientTopIntensitySunset=0.86 +GradientTopIntensityDusk=0.75 +GradientTopIntensityNight=0.54 +GradientTopIntensityInteriorDay=1.39 +GradientTopIntensityInteriorNight=0.52 +GradientTopCurveDawn=0.87 +GradientTopCurveSunrise=0.82 +GradientTopCurveDay=0.54 +GradientTopCurveSunset=0.81 +GradientTopCurveDusk=0.89 +GradientTopCurveNight=0.68 +GradientTopCurveInteriorDay=0.53 +GradientTopCurveInteriorNight=0.67 +GradientTopColorFilterDawn=0.953, 0.208, 0.753 +GradientTopColorFilterSunrise=0.918, 0.349, 0.188 +GradientTopColorFilterDay=0.882, 0.502, 0.263 +GradientTopColorFilterSunset=0.91, 0.286, 0.188 +GradientTopColorFilterDusk=0.855, 0.165, 0.463 +GradientTopColorFilterNight=0.447, 0.231, 0.773 +GradientTopColorFilterInteriorDay=0.984, 0.537, 0.216 +GradientTopColorFilterInteriorNight=0.616, 0.251, 0.933 -GradientMiddleIntensityDawn=1.0 -GradientMiddleIntensitySunrise=1.0 -GradientMiddleIntensityDay=1.0 -GradientMiddleIntensitySunset=1.0 -GradientMiddleIntensityDusk=1.0 -GradientMiddleIntensityNight=1.0 -GradientMiddleIntensityInteriorDay=1.0 -GradientMiddleIntensityInteriorNight=1.0 -GradientMiddleCurveDawn=1.0 -GradientMiddleCurveSunrise=1.0 -GradientMiddleCurveDay=1.0 -GradientMiddleCurveSunset=1.0 -GradientMiddleCurveDusk=1.0 -GradientMiddleCurveNight=1.0 -GradientMiddleCurveInteriorDay=1.0 -GradientMiddleCurveInteriorNight=1.0 -GradientMiddleColorFilterDawn=1, 1, 1 -GradientMiddleColorFilterSunrise=1, 1, 1 -GradientMiddleColorFilterDay=1, 1, 1 -GradientMiddleColorFilterSunset=1, 1, 1 -GradientMiddleColorFilterDusk=1, 1, 1 -GradientMiddleColorFilterNight=1, 1, 1 -GradientMiddleColorFilterInteriorDay=1, 1, 1 -GradientMiddleColorFilterInteriorNight=1, 1, 1 +GradientMiddleIntensityDawn=0.7 +GradientMiddleIntensitySunrise=1.02 +GradientMiddleIntensityDay=1.25 +GradientMiddleIntensitySunset=1.02 +GradientMiddleIntensityDusk=0.77 +GradientMiddleIntensityNight=0.7 +GradientMiddleIntensityInteriorDay=1.27 +GradientMiddleIntensityInteriorNight=0.64 +GradientMiddleCurveDawn=0.94 +GradientMiddleCurveSunrise=0.81 +GradientMiddleCurveDay=0.71 +GradientMiddleCurveSunset=0.88 +GradientMiddleCurveDusk=0.9 +GradientMiddleCurveNight=0.63 +GradientMiddleCurveInteriorDay=0.72 +GradientMiddleCurveInteriorNight=0.64 +GradientMiddleColorFilterDawn=0.824, 0.533, 0.8 +GradientMiddleColorFilterSunrise=0.898, 0.392, 0.239 +GradientMiddleColorFilterDay=0.918, 0.49, 0.29 +GradientMiddleColorFilterSunset=0.882, 0.318, 0.129 +GradientMiddleColorFilterDusk=0.827, 0.302, 0.529 +GradientMiddleColorFilterNight=0.616, 0.424, 0.855 +GradientMiddleColorFilterInteriorDay=1, 0.435, 0.106 +GradientMiddleColorFilterInteriorNight=0.529, 0.306, 0.847 -GradientHorizonIntensityDawn=1.0 -GradientHorizonIntensitySunrise=1.0 -GradientHorizonIntensityDay=1.0 -GradientHorizonIntensitySunset=1.0 -GradientHorizonIntensityDusk=1.0 -GradientHorizonIntensityNight=1.0 -GradientHorizonIntensityInteriorDay=1.0 -GradientHorizonIntensityInteriorNight=1.0 -GradientHorizonCurveDawn=1.0 -GradientHorizonCurveSunrise=1.0 -GradientHorizonCurveDay=1.0 -GradientHorizonCurveSunset=1.0 -GradientHorizonCurveDusk=1.0 -GradientHorizonCurveNight=1.0 -GradientHorizonCurveInteriorDay=1.0 -GradientHorizonCurveInteriorNight=1.0 -GradientHorizonColorFilterDawn=1, 1, 1 -GradientHorizonColorFilterSunrise=1, 1, 1 -GradientHorizonColorFilterDay=1, 1, 1 -GradientHorizonColorFilterSunset=1, 1, 1 -GradientHorizonColorFilterDusk=1, 1, 1 -GradientHorizonColorFilterNight=1, 1, 1 -GradientHorizonColorFilterInteriorDay=1, 1, 1 -GradientHorizonColorFilterInteriorNight=1, 1, 1 +GradientHorizonIntensityDawn=1.6 +GradientHorizonIntensitySunrise=1.63 +GradientHorizonIntensityDay=1.240001 +GradientHorizonIntensitySunset=1.56 +GradientHorizonIntensityDusk=1.69 +GradientHorizonIntensityNight=1.36 +GradientHorizonIntensityInteriorDay=1.25 +GradientHorizonIntensityInteriorNight=1.39 +GradientHorizonCurveDawn=0.44 +GradientHorizonCurveSunrise=0.4 +GradientHorizonCurveDay=0.37 +GradientHorizonCurveSunset=0.44 +GradientHorizonCurveDusk=0.46 +GradientHorizonCurveNight=0.57 +GradientHorizonCurveInteriorDay=0.33 +GradientHorizonCurveInteriorNight=0.65 +GradientHorizonColorFilterDawn=0.741, 0.576, 0.62 +GradientHorizonColorFilterSunrise=0.925, 0.635, 0.416 +GradientHorizonColorFilterDay=0.906, 0.451, 0.239 +GradientHorizonColorFilterSunset=0.82, 0.471, 0.294 +GradientHorizonColorFilterDusk=0.749, 0.396, 0.357 +GradientHorizonColorFilterNight=0.388, 0.294, 0.906 +GradientHorizonColorFilterInteriorDay=0.961, 0.486, 0.247 +GradientHorizonColorFilterInteriorNight=0.357, 0.212, 0.949 -CloudsIntensityDawn=0.5 -CloudsIntensitySunrise=0.75 -CloudsIntensityDay=1.0 -CloudsIntensitySunset=0.75 -CloudsIntensityDusk=0.5 -CloudsIntensityNight=0.25 -CloudsIntensityInteriorDay=1.0 -CloudsIntensityInteriorNight=1.0 -CloudsCurveDawn=1.0 -CloudsCurveSunrise=1.0 -CloudsCurveDay=1.0 -CloudsCurveSunset=1.0 -CloudsCurveDusk=1.0 -CloudsCurveNight=1.0 -CloudsCurveInteriorDay=1.0 -CloudsCurveInteriorNight=1.0 +CloudsIntensityDawn=0.15 +CloudsIntensitySunrise=0.7 +CloudsIntensityDay=0.910001 +CloudsIntensitySunset=0.610001 +CloudsIntensityDusk=0.180001 +CloudsIntensityNight=0.100001 +CloudsIntensityInteriorDay=0.94 +CloudsIntensityInteriorNight=0.04 +CloudsCurveDawn=1.94 +CloudsCurveSunrise=1.18 +CloudsCurveDay=0.79 +CloudsCurveSunset=1.16 +CloudsCurveDusk=1.9 +CloudsCurveNight=2.44 +CloudsCurveInteriorDay=1.31 +CloudsCurveInteriorNight=2.39 CloudsDesaturationDawn=0.0 CloudsDesaturationSunrise=0.0 CloudsDesaturationDay=0.0 @@ -180,31 +180,31 @@ CloudsDesaturationDusk=0.0 CloudsDesaturationNight=0.0 CloudsDesaturationInteriorDay=0.0 CloudsDesaturationInteriorNight=0.0 -CloudsOpacityDawn=1.0 -CloudsOpacitySunrise=1.0 -CloudsOpacityDay=1.0 -CloudsOpacitySunset=1.0 -CloudsOpacityDusk=1.0 -CloudsOpacityNight=1.0 +CloudsOpacityDawn=1.13 +CloudsOpacitySunrise=0.98 +CloudsOpacityDay=0.75 +CloudsOpacitySunset=0.96 +CloudsOpacityDusk=1.19 +CloudsOpacityNight=1.1 CloudsOpacityInteriorDay=1.0 CloudsOpacityInteriorNight=1.0 -CloudsColorFilterDawn=1, 1, 1 -CloudsColorFilterSunrise=1, 1, 1 -CloudsColorFilterDay=1, 1, 1 -CloudsColorFilterSunset=1, 1, 1 -CloudsColorFilterDusk=1, 1, 1 -CloudsColorFilterNight=1, 1, 1 -CloudsColorFilterInteriorDay=1, 1, 1 -CloudsColorFilterInteriorNight=1, 1, 1 +CloudsColorFilterDawn=0.973, 0.0471, 0.0471 +CloudsColorFilterSunrise=0.98, 0.671, 0.431 +CloudsColorFilterDay=0.984, 0.757, 0.561 +CloudsColorFilterSunset=0.984, 0.737, 0.545 +CloudsColorFilterDusk=0.878, 0.11, 0.11 +CloudsColorFilterNight=0.58, 0.337, 0.808 +CloudsColorFilterInteriorDay=0.882, 0.569, 0.255 +CloudsColorFilterInteriorNight=0.565, 0.388, 0.827 SunIntensityDawn=4.0 -SunIntensitySunrise=4.0 -SunIntensityDay=4.0 -SunIntensitySunset=4.0 +SunIntensitySunrise=6.0 +SunIntensityDay=5.0 +SunIntensitySunset=6.0 SunIntensityDusk=4.0 -SunIntensityNight=4.0 -SunIntensityInteriorDay=4.0 -SunIntensityInteriorNight=4.0 +SunIntensityNight=3.0 +SunIntensityInteriorDay=5.0 +SunIntensityInteriorNight=3.0 SunDesaturationDawn=0.0 SunDesaturationSunrise=0.0 SunDesaturationDay=0.0 @@ -213,23 +213,23 @@ SunDesaturationDusk=0.0 SunDesaturationNight=0.0 SunDesaturationInteriorDay=0.0 SunDesaturationInteriorNight=0.0 -SunColorFilterDawn=1, 1, 1 -SunColorFilterSunrise=1, 1, 1 -SunColorFilterDay=1, 1, 1 -SunColorFilterSunset=1, 1, 1 -SunColorFilterDusk=1, 1, 1 -SunColorFilterNight=1, 1, 1 -SunColorFilterInteriorDay=1, 1, 1 -SunColorFilterInteriorNight=1, 1, 1 +SunColorFilterDawn=0.953, 0.098, 0.0353 +SunColorFilterSunrise=0.906, 0.216, 0.0275 +SunColorFilterDay=0.996, 0.62, 0.369 +SunColorFilterSunset=0.953, 0.247, 0.122 +SunColorFilterDusk=0.969, 0.161, 0.161 +SunColorFilterNight=0.839, 0.0275, 0.0157 +SunColorFilterInteriorDay=0.988, 0.604, 0.329 +SunColorFilterInteriorNight=0.859, 0.0471, 0.00392 -MoonIntensityDawn=1.8 -MoonIntensitySunrise=1.4 +MoonIntensityDawn=1.77 +MoonIntensitySunrise=1.39 MoonIntensityDay=1.0 -MoonIntensitySunset=1.4 -MoonIntensityDusk=1.8 -MoonIntensityNight=2.0 +MoonIntensitySunset=1.48 +MoonIntensityDusk=1.9 +MoonIntensityNight=2.4 MoonIntensityInteriorDay=1.0 -MoonIntensityInteriorNight=2.0 +MoonIntensityInteriorNight=2.47 MoonDesaturationDawn=0.0 MoonDesaturationSunrise=0.0 MoonDesaturationDay=0.0 @@ -238,24 +238,24 @@ MoonDesaturationDusk=0.0 MoonDesaturationNight=0.0 MoonDesaturationInteriorDay=0.0 MoonDesaturationInteriorNight=0.0 -MoonColorFilterDawn=1, 1, 1 -MoonColorFilterSunrise=1, 1, 1 +MoonColorFilterDawn=0.443, 0.322, 0.98 +MoonColorFilterSunrise=0.776, 0.835, 0.918 MoonColorFilterDay=1, 1, 1 -MoonColorFilterSunset=1, 1, 1 -MoonColorFilterDusk=1, 1, 1 -MoonColorFilterNight=1, 1, 1 +MoonColorFilterSunset=0.722, 0.8, 0.918 +MoonColorFilterDusk=0.337, 0.239, 0.969 +MoonColorFilterNight=0.314, 0.541, 0.965 MoonColorFilterInteriorDay=1, 1, 1 -MoonColorFilterInteriorNight=1, 1, 1 +MoonColorFilterInteriorNight=0.314, 0.431, 0.957 [ENVIRONMENT] IgnoreWeatherSystem=true -DirectLightingIntensityDawn=1.02 -DirectLightingIntensitySunrise=1.3 -DirectLightingIntensityDay=1.12 -DirectLightingIntensitySunset=1.3 -DirectLightingIntensityDusk=0.98 -DirectLightingIntensityNight=0.8 -DirectLightingIntensityInteriorDay=1.03 -DirectLightingIntensityInteriorNight=0.82 +DirectLightingIntensityDawn=2.57 +DirectLightingIntensitySunrise=2.47 +DirectLightingIntensityDay=1.92 +DirectLightingIntensitySunset=2.43 +DirectLightingIntensityDusk=2.53 +DirectLightingIntensityNight=3.04 +DirectLightingIntensityInteriorDay=1.72 +DirectLightingIntensityInteriorNight=2.96 DirectLightingDesaturationDawn=0.0 DirectLightingDesaturationSunrise=0.0 DirectLightingDesaturationDay=0.0 @@ -264,22 +264,22 @@ DirectLightingDesaturationDusk=0.0 DirectLightingDesaturationNight=0.0 DirectLightingDesaturationInteriorDay=0.0 DirectLightingDesaturationInteriorNight=0.0 -DirectLightingColorFilterDawn=1, 1, 1 -DirectLightingColorFilterSunrise=1, 1, 1 -DirectLightingColorFilterDay=1, 1, 1 -DirectLightingColorFilterSunset=1, 1, 1 -DirectLightingColorFilterDusk=1, 1, 1 -DirectLightingColorFilterNight=1, 1, 1 -DirectLightingColorFilterInteriorDay=1, 1, 1 -DirectLightingColorFilterInteriorNight=1, 1, 1 -AmbientLightingIntensityDawn=0.63 -AmbientLightingIntensitySunrise=0.72 -AmbientLightingIntensityDay=0.94 -AmbientLightingIntensitySunset=0.77 -AmbientLightingIntensityDusk=0.65 -AmbientLightingIntensityNight=0.4 -AmbientLightingIntensityInteriorDay=0.62 -AmbientLightingIntensityInteriorNight=0.29 +DirectLightingColorFilterDawn=0.878, 0.643, 0.839 +DirectLightingColorFilterSunrise=0.922, 0.706, 0.514 +DirectLightingColorFilterDay=0.957, 0.831, 0.58 +DirectLightingColorFilterSunset=0.961, 0.635, 0.435 +DirectLightingColorFilterDusk=0.843, 0.624, 0.651 +DirectLightingColorFilterNight=0.722, 0.706, 0.973 +DirectLightingColorFilterInteriorDay=0.949, 0.753, 0.478 +DirectLightingColorFilterInteriorNight=0.816, 0.773, 0.992 +AmbientLightingIntensityDawn=0.35 +AmbientLightingIntensitySunrise=0.53 +AmbientLightingIntensityDay=0.79 +AmbientLightingIntensitySunset=0.56 +AmbientLightingIntensityDusk=0.35 +AmbientLightingIntensityNight=0.81 +AmbientLightingIntensityInteriorDay=0.75 +AmbientLightingIntensityInteriorNight=0.83 [SSAO_SSIL] UseIndirectLighting=true ResolutionScale=0.5 diff --git a/enbseries/enbbloom.fx b/enbseries/enbbloom.fx index c5d8e05..1f77d4e 100644 --- a/enbseries/enbbloom.fx +++ b/enbseries/enbbloom.fx @@ -400,16 +400,12 @@ SamplerState Sampler Filter = MIN_MAG_MIP_LINEAR; AddressU = Border; AddressV = Border; - MaxLOD = 0; - MinLOD = 0; }; SamplerState Sampler2 { Filter = MIN_MAG_MIP_LINEAR; AddressU = Clamp; AddressV = Clamp; - MaxLOD = 0; - MinLOD = 0; }; SamplerState SamplerLens @@ -417,8 +413,6 @@ SamplerState SamplerLens Filter = MIN_MAG_MIP_LINEAR; AddressU = Mirror; AddressV = Mirror; - MaxLOD = 0; - MinLOD = 0; }; struct VS_INPUT_POST @@ -472,7 +466,7 @@ float4 PS_PrePass( VS_OUTPUT_POST IN, float4 v0 : SV_Position0 ) : SV_Target float bloomintensity = tod_ind(bloomintensity); float4 res = TextureDownsampled.Sample(Sampler2,coord); float3 hsv = rgb2hsv(res.rgb); - if ( hsv.z > bloomcap ) hsv.z = bloomcap; + hsv.z = min(hsv.z,bloomcap); res.rgb = hsv2rgb(hsv); res = max(res+bloombump,0.0); hsv = rgb2hsv(res.rgb); @@ -493,8 +487,8 @@ float4 PS_Downsize( VS_OUTPUT_POST IN, float4 v0 : SV_Position0, { float2 coord = IN.txcoord0.xy; float2 ssz; - if ( insz > 0.0 ) ssz = float2(1.0/insz,1.0/insz); - else return intex.Sample(Sampler2,coord); + if ( insz <= 0.0 ) return intex.Sample(Sampler2,coord); + ssz = float2(1.0/insz,1.0/insz); float4 res = 0.25*(intex.Sample(Sampler2,coord) +intex.Sample(Sampler2,coord+float2(ssz.x,0.0)) +intex.Sample(Sampler2,coord+float2(0.0,ssz.y)) @@ -591,43 +585,56 @@ float4 PS_VerticalBlur( VS_OUTPUT_POST IN, float4 v0 : SV_Position0, } /* end pass, mix it all up */ -float4 PS_PostPass( VS_OUTPUT_POST IN, float4 v0 : SV_Position0, - uniform bool simple) : SV_Target +float4 PS_PostPass( VS_OUTPUT_POST IN, float4 v0 : SV_Position0 ) : SV_Target { float2 coord = IN.txcoord0.xy; - float4 res = float4(0.0,0.0,0.0,0.0); - if ( simple ) res += bloommixs*RenderTarget32.Sample(Sampler2,coord); - else - { - res += bloommix1*RenderTarget1024.Sample(Sampler2,coord); - res += bloommix2*RenderTarget512.Sample(Sampler2,coord); - res += bloommix3*RenderTarget256.Sample(Sampler2,coord); - res += bloommix4*RenderTarget128.Sample(Sampler2,coord); - res += bloommix5*RenderTarget64.Sample(Sampler2,coord); - res += bloommix6*RenderTarget32.Sample(Sampler2,coord); - res.rgb /= 6.0; - } + float4 res = bloommix1*RenderTarget1024.Sample(Sampler2,coord); + res += bloommix2*RenderTarget512.Sample(Sampler2,coord); + res += bloommix3*RenderTarget256.Sample(Sampler2,coord); + res += bloommix4*RenderTarget128.Sample(Sampler2,coord); + res += bloommix5*RenderTarget64.Sample(Sampler2,coord); + res += bloommix6*RenderTarget32.Sample(Sampler2,coord); + res.rgb /= 6.0; res.rgb = clamp(res.rgb,0.0,32768.0); res.a = 1.0; if ( !dirtenable ) return res; /* crappy lens filter, useful when playing characters with glasses */ - float4 mud = float4(0.0,0.0,0.0,0.0); float2 ccoord = coord; #ifdef ASPECT_LENSDIRT ccoord.y = (coord.y-0.5)*ScreenSize.w+0.5; #endif float4 crap = TextureLens.Sample(SamplerLens,ccoord); - if ( simple ) mud += dirtmixs*RenderTarget32.Sample(Sampler2,coord); - else - { - mud += dirtmix1*RenderTarget1024.Sample(Sampler2,coord); - mud += dirtmix2*RenderTarget512.Sample(Sampler2,coord); - mud += dirtmix3*RenderTarget256.Sample(Sampler2,coord); - mud += dirtmix4*RenderTarget128.Sample(Sampler2,coord); - mud += dirtmix5*RenderTarget64.Sample(Sampler2,coord); - mud += dirtmix6*RenderTarget32.Sample(Sampler2,coord); - mud.rgb /= 6.0; - } + float4 mud = dirtmix1*RenderTarget1024.Sample(Sampler2,coord); + mud += dirtmix2*RenderTarget512.Sample(Sampler2,coord); + mud += dirtmix3*RenderTarget256.Sample(Sampler2,coord); + mud += dirtmix4*RenderTarget128.Sample(Sampler2,coord); + mud += dirtmix5*RenderTarget64.Sample(Sampler2,coord); + mud += dirtmix6*RenderTarget32.Sample(Sampler2,coord); + mud.rgb /= 6.0; + mud.rgb = clamp(mud.rgb,0.0,32768.0); + float mudmax = luminance(mud.rgb); + float mudn = max(mudmax/(1.0+mudmax),0.0); + mudn = pow(mudn,max(ldirtpow-crap.a,0.0)); + mud.rgb *= mudn*ldirtfactor*crap.rgb; + res += max(mud,0.0); + res.a = 1.0; + return res; +} + +float4 PS_SPostPass( VS_OUTPUT_POST IN, float4 v0 : SV_Position0 ) : SV_Target +{ + float2 coord = IN.txcoord0.xy; + float4 res = bloommixs*RenderTarget32.Sample(Sampler2,coord); + res.rgb = clamp(res.rgb,0.0,32768.0); + res.a = 1.0; + if ( !dirtenable ) return res; + /* crappy lens filter, useful when playing characters with glasses */ + float2 ccoord = coord; +#ifdef ASPECT_LENSDIRT + ccoord.y = (coord.y-0.5)*ScreenSize.w+0.5; +#endif + float4 crap = TextureLens.Sample(SamplerLens,ccoord); + float4 mud = dirtmixs*RenderTarget32.Sample(Sampler2,coord); mud.rgb = clamp(mud.rgb,0.0,32768.0); float mudmax = luminance(mud.rgb); float mudn = max(mudmax/(1.0+mudmax),0.0); @@ -718,7 +725,7 @@ technique11 BloomSimplePass9 pass p0 { SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_PostPass(true))); + SetPixelShader(CompileShader(ps_5_0,PS_SPostPass())); } } @@ -887,6 +894,6 @@ technique11 BloomPass19 pass p0 { SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_PostPass(false))); + SetPixelShader(CompileShader(ps_5_0,PS_PostPass())); } } diff --git a/enbseries/enbbloom.fx.ini b/enbseries/enbbloom.fx.ini index 74686ad..6be1d57 100644 --- a/enbseries/enbbloom.fx.ini +++ b/enbseries/enbbloom.fx.ini @@ -2,41 +2,41 @@ TECHNIQUE=1 Bloom Intensity Night=1.05 Bloom Intensity Day=1.13 -Bloom Intensity Interior=1.09 +Bloom Intensity Interior=1.1 Bloom Contrast Night=0.54 Bloom Contrast Day=0.86 -Bloom Contrast Interior=0.67 +Bloom Contrast Interior=0.66 Bloom Saturation Night=0.82 Bloom Saturation Day=0.61 Bloom Saturation Interior=0.75 -Bloom Offset Night=-0.14 +Bloom Offset Night=-0.16 Bloom Offset Day=-0.32 -Bloom Offset Interior=-0.23 +Bloom Offset Interior=-0.27 Bloom Intensity Cap Night=100.0 Bloom Intensity Cap Day=100.0 Bloom Intensity Cap Interior=100.0 Bloom Blur Radius=1.0 -Blue Shift Night=0.2, 0.6, 1 -Blue Shift Day=0.2, 0.6, 1 -Blue Shift Interior=0.2, 0.6, 1 -Blue Shift Intensity Night=0.49 -Blue Shift Intensity Day=0.32 -Blue Shift Intensity Interior=0.48 -Blue Shift Luminance Factor Per-pass=0.23 +Blue Shift Night=0.294, 0.424, 0.859 +Blue Shift Day=0.22, 0.537, 0.855 +Blue Shift Interior=0.337, 0.525, 0.878 +Blue Shift Intensity Night=0.99 +Blue Shift Intensity Day=0.72 +Blue Shift Intensity Interior=0.88 +Blue Shift Luminance Factor Per-pass=0.24 Blue Shift Color Factor Per-pass=0.34 Enable Anamorphic Bloom=true Anamorphic Bloom Blend Night=0.73 Anamorphic Bloom Blend Day=0.62 Anamorphic Bloom Blend Interior=0.67 -Anamorphic Bloom Blue Shift Night=0.4, 0.1, 1 -Anamorphic Bloom Blue Shift Day=0.4, 0.1, 1 -Anamorphic Bloom Blue Shift Interior=0.4, 0.1, 1 -Anamorphic Bloom Blue Shift Intensity Night=2.71 -Anamorphic Bloom Blue Shift Intensity Day=1.590001 -Anamorphic Bloom Blue Shift Intensity Interior=1.86 +Anamorphic Bloom Blue Shift Night=0.553, 0.404, 0.851 +Anamorphic Bloom Blue Shift Day=0.424, 0.384, 0.831 +Anamorphic Bloom Blue Shift Interior=0.537, 0.475, 0.89 +Anamorphic Bloom Blue Shift Intensity Night=3.31 +Anamorphic Bloom Blue Shift Intensity Day=2.59 +Anamorphic Bloom Blue Shift Intensity Interior=2.86 Anamorphic Bloom Contrast Night=1.17 Anamorphic Bloom Contrast Day=1.31 -Anamorphic Bloom Contrast Interior=1.22 +Anamorphic Bloom Contrast Interior=1.24 Anamorphic Bloom Radius Multiplier=1.0 Bloom Intensity Interior Night=1.33 Bloom Intensity Interior Day=1.26 @@ -93,9 +93,9 @@ Dirt Pass 3 Blend=0.24 Dirt Pass 4 Blend=0.4 Dirt Pass 5 Blend=0.67 Dirt Pass 6 Blend=3.66 -Dirt Contrast=0.85 -Dirt Factor=2.33 +Dirt Contrast=0.94 +Dirt Factor=1.84 Bloom Blur Radius X=1.92 Bloom Blur Radius Y=1.08 -Bloom Single Pass Blend=0.41 -Dirt Single Pass Blend=1.43 +Bloom Single Pass Blend=0.37 +Dirt Single Pass Blend=0.71 diff --git a/enbseries/enbdepthoffield.fx b/enbseries/enbdepthoffield.fx index 5e9c6e5..8648b42 100644 --- a/enbseries/enbdepthoffield.fx +++ b/enbseries/enbdepthoffield.fx @@ -930,24 +930,18 @@ SamplerState Sampler0 Filter = MIN_MAG_MIP_POINT; AddressU = Clamp; AddressV = Clamp; - MinLod = 0; - MaxLod = 0; }; SamplerState Sampler1 { Filter = MIN_MAG_MIP_LINEAR; AddressU = Clamp; AddressV = Clamp; - MinLod = 0; - MaxLod = 0; }; SamplerState Sampler2 { Filter = MIN_MAG_MIP_LINEAR; AddressU = Wrap; AddressV = Wrap; - MinLod = 0; - MaxLod = 0; }; struct VS_INPUT_POST @@ -1282,18 +1276,16 @@ float4 PS_Distortion( VS_OUTPUT_POST IN, float4 v0 : SV_Position0 ) : SV_Target if ( heatenable ) ofs = DistantHeat(ofs); ofs -= coord; float4 res; - if ( (distcha != 0.0) && (length(ofs) != 0) ) - { - float2 ofr, ofg, ofb; - ofr = ofs*(1.0-distcha*0.01); - ofg = ofs; - ofb = ofs*(1.0+distcha*0.01); - res = float4(TextureColor.Sample(Sampler1,coord+ofr).r, - TextureColor.Sample(Sampler1,coord+ofg).g, - TextureColor.Sample(Sampler1,coord+ofb).b, - TextureColor.Sample(Sampler1,coord+ofs).a); - } - else res = TextureColor.Sample(Sampler1,coord+ofs); + if ( (distcha == 0.0) || (length(ofs) == 0.0) ) + return TextureColor.Sample(Sampler1,coord+ofs); + float2 ofr, ofg, ofb; + ofr = ofs*(1.0-distcha*0.01); + ofg = ofs; + ofb = ofs*(1.0+distcha*0.01); + res = float4(TextureColor.Sample(Sampler1,coord+ofr).r, + TextureColor.Sample(Sampler1,coord+ofg).g, + TextureColor.Sample(Sampler1,coord+ofb).b, + TextureColor.Sample(Sampler1,coord+ofs).a); return res; } @@ -1374,29 +1366,26 @@ float4 PS_DoFBlur( VS_OUTPUT_POST IN, float4 v0 : SV_Position0 ) : SV_Target if ( (fixed.x > 0) && (fixed.y > 0) ) bresl = fixed; else bresl = float2(ScreenSize.x,ScreenSize.x*ScreenSize.w); float2 bof = 1.0/bresl; - if ( dfc > dofminblur ) + if ( dfc <= dofminblur ) return TextureColor.Sample(Sampler1,coord); + float4 res = float4(0,0,0,0); + float dep = TextureDepth.Sample(Sampler1,coord).x; + float sd, ds, sw, tw = 0; + float2 bsz = bof*dofpradius*dfc; + float4 sc; + [unroll] for ( int i=0; i<32; i++ ) { - float4 res = float4(0,0,0,0); - float dep = TextureDepth.Sample(Sampler1,coord).x; - float sd, ds, sw, tw = 0; - float2 bsz = bof*dofpradius*dfc; - float4 sc; - [unroll] for ( int i=0; i<32; i++ ) - { - sc = TextureColor.Sample(Sampler1,coord+poisson32[i] - *bsz); - ds = TextureDepth.Sample(Sampler1,coord+poisson32[i] - *bsz).x; - sd = RenderTargetR32F.Sample(Sampler1,coord - +poisson32[i]*bsz).x; - sw = (ds>dep)?1.0:sd; - tw += sw; - res += sc*sw; - } - res /= tw; - return res; + sc = TextureColor.SampleLevel(Sampler1,coord+poisson32[i]*bsz, + dfc*4.0); + ds = TextureDepth.Sample(Sampler1,coord+poisson32[i]*bsz).x; + sd = RenderTargetR32F.Sample(Sampler1,coord+poisson32[i] + *bsz).x; + sw = (ds>dep)?1.0:sd; + tw += sw; + res += sc*sw; } - else return TextureColor.Sample(Sampler1,coord); + res /= tw; + return res; + } /* simple gaussian / bilateral blur */ @@ -1483,23 +1472,22 @@ float4 PS_FrostPass( VS_OUTPUT_POST IN, float4 v0 : SV_Position0 ) : SV_Target float2 bresl; if ( (fixed.x > 0) && (fixed.y > 0) ) bresl = fixed; else bresl = float2(ScreenSize.x,ScreenSize.x*ScreenSize.w); - float2 ofs = coord; - if ( frostenable ) ofs = ScreenFrost(ofs); - ofs -= coord; float4 res; - if ( (distcha != 0.0) && (length(ofs) != 0.0) ) - { - float2 ofr, ofg, ofb; - ofr = ofs*(1.0-distcha*0.01); - ofg = ofs; - ofb = ofs*(1.0+distcha*0.01); - res = float4(TextureColor.Sample(Sampler1,coord+ofr).r, - TextureColor.Sample(Sampler1,coord+ofg).g, - TextureColor.Sample(Sampler1,coord+ofb).b,1.0); - } - else res = TextureColor.Sample(Sampler1,coord+ofs); if ( frostenable ) { + float2 ofs = ScreenFrost(coord); + ofs -= coord; + if ( (distcha != 0.0) && (length(ofs) != 0.0) ) + { + float2 ofr, ofg, ofb; + ofr = ofs*(1.0-distcha*0.01); + ofg = ofs; + ofb = ofs*(1.0+distcha*0.01); + res = float4(TextureColor.Sample(Sampler1,coord+ofr).r, + TextureColor.Sample(Sampler1,coord+ofg).g, + TextureColor.Sample(Sampler1,coord+ofb).b,1.0); + } + else res = TextureColor.Sample(Sampler1,coord+ofs); float2 nc = coord*(bresl/FROSTSIZE)*frostsize; float bmp = pow(TextureFrost.Sample(Sampler2,nc).x,frostbpow); float dist = distance(coord,float2(0.5,0.5))*2.0; @@ -1512,6 +1500,7 @@ float4 PS_FrostPass( VS_OUTPUT_POST IN, float4 v0 : SV_Position0 ) : SV_Target else dist *= todpow; res.rgb *= 1.0+bmp*dist; } + else res = TextureColor.Sample(Sampler1,coord); if ( !focusdisplay ) return res; if ( distance(coord,focuscenter) < 0.01 ) res.rgb = float3(1,0,0); float cstep = (1.0/3.0); diff --git a/enbseries/enbdepthoffield.fx.ini b/enbseries/enbdepthoffield.fx.ini index 3571861..57b96b6 100644 --- a/enbseries/enbdepthoffield.fx.ini +++ b/enbseries/enbdepthoffield.fx.ini @@ -1,5 +1,5 @@ [ENBDEPTHOFFIELD.FX] -TECHNIQUE=1 +TECHNIQUE=2 Fixed Resolution Width=1920 Fixed Resolution Height=1080 Depth Cutoff=999998.0 @@ -12,7 +12,7 @@ Underwater Speed=24.3, 21.9, 26.5 Underwater Amplitude=0.1, 0.11, 0.07 Underwater Zoom=0.15 Always Underwater=false -Enable Hot Air Refraction=false +Enable Hot Air Refraction=true Heat Texture Size=6.4 Heat Speed=0.45 Heat Fade Contrast=235.0 @@ -28,8 +28,8 @@ Frost Strength=0.05 Frost Radial Contrast=0.8 Frost Radial Intensity=1.2 Frost Radial Offset=-0.9 -Frost Texture Blend=3.8 -Frost Texture Blend Contrast=4.5 +Frost Texture Blend=3.72 +Frost Texture Blend Contrast=4.52 Frost Texture Size=1.0 Frost Indoor Factor=0.0 Frost Night Factor=0.0 @@ -180,7 +180,7 @@ Frost Factor Sunrise=0.0 Frost Factor Day=0.0 Frost Factor Sunset=0.0 Frost Factor Dusk=0.0 -Frost Factor Night=0.28 +Frost Factor Night=1.0 Frost Factor Interior=0.0 DOF Bilateral Factor=20.0 DOF Bilateral Radius=1.0 diff --git a/enbseries/enbeffect.fx b/enbseries/enbeffect.fx index 6726063..69653a8 100644 --- a/enbseries/enbeffect.fx +++ b/enbseries/enbeffect.fx @@ -486,16 +486,12 @@ SamplerState Sampler0 Filter = MIN_MAG_MIP_POINT; AddressU = Clamp; AddressV = Clamp; - MaxLOD = 0; - MinLOD = 0; }; SamplerState Sampler1 { Filter = MIN_MAG_MIP_LINEAR; AddressU = Clamp; AddressV = Clamp; - MaxLOD = 0; - MinLOD = 0; }; SamplerState SamplerLUT { diff --git a/enbseries/enbeffect.fx.ini b/enbseries/enbeffect.fx.ini index e53bede..cd27f42 100644 --- a/enbseries/enbeffect.fx.ini +++ b/enbseries/enbeffect.fx.ini @@ -2,7 +2,7 @@ TECHNIQUE=1 Enable Grain=true Grain Speed=2500.0 -Grain Intensity=0.02 +Grain Intensity=0.03 Grain Saturation=-0.23 Grain Two-Pass=true Grain Blending Mode=3 @@ -16,54 +16,54 @@ Enable Tonemapping=true Tonemap Shoulder Strength Night=1.12 Tonemap Shoulder Strength Day=1.22 Tonemap Shoulder Strength Interior=1.14 -Tonemap Linear Strength Night=0.7 +Tonemap Linear Strength Night=0.67 Tonemap Linear Strength Day=0.87 -Tonemap Linear Strength Interior=0.92 -Tonemap Linear Angle Night=0.76 +Tonemap Linear Strength Interior=0.75 +Tonemap Linear Angle Night=0.85 Tonemap Linear Angle Day=0.73 -Tonemap Linear Angle Interior=0.58 -Tonemap Toe Strength Night=0.91 +Tonemap Linear Angle Interior=0.77 +Tonemap Toe Strength Night=0.93 Tonemap Toe Strength Day=0.81 -Tonemap Toe Strength Interior=0.69 -Tonemap Toe Numerator Night=3.73 +Tonemap Toe Strength Interior=0.83 +Tonemap Toe Numerator Night=3.74 Tonemap Toe Numerator Day=3.93 -Tonemap Toe Numerator Interior=2.72 -Tonemap Toe Denominator Night=1.34 +Tonemap Toe Numerator Interior=3.8 +Tonemap Toe Denominator Night=1.33 Tonemap Toe Denominator Day=1.14 -Tonemap Toe Denominator Interior=1.07 -Tonemap Linear White Night=1.29 +Tonemap Toe Denominator Interior=1.25 +Tonemap Linear White Night=1.28 Tonemap Linear White Day=1.39 -Tonemap Linear White Interior=1.37 +Tonemap Linear White Interior=1.32 Enable RGB Grading=true Grading Intensity Night=1.04, 1.08, 1.07 Grading Intensity Day=1.09, 1.04, 1.01 Grading Intensity Interior=1.1, 1.05, 1.02 Grading Contrast Night=0.97, 0.94, 0.96 -Grading Contrast Day=0.89, 0.99, 0.97 +Grading Contrast Day=0.84, 0.94, 0.97 Grading Contrast Interior=0.94, 0.96, 0.99 Enable Vibrance Grading=true Grading Color Night=-0.91, -0.62, -0.94 -Grading Color Day=-0.81, -0.15, -0.47 +Grading Color Day=-1.16, -0.06, -0.23 Grading Color Interior=-0.47, -0.12, -0.14 -Grading Color Factor Night=-0.15 -Grading Color Factor Day=-0.07 -Grading Color Factor Interior=-0.09 +Grading Color Factor Night=-0.14 +Grading Color Factor Day=-0.12 +Grading Color Factor Interior=-0.1 Enable HSV Grading=true Grading Saturation Intensity Night=1.42 -Grading Saturation Intensity Day=1.54 +Grading Saturation Intensity Day=1.51 Grading Saturation Intensity Interior=1.46 -Grading Saturation Contrast Night=1.22 -Grading Saturation Contrast Day=1.19 +Grading Saturation Contrast Night=1.21 +Grading Saturation Contrast Day=1.07 Grading Saturation Contrast Interior=1.1 Grading Value Intensity Night=1.03 -Grading Value Intensity Day=1.03 +Grading Value Intensity Day=1.11 Grading Value Intensity Interior=1.09 -Grading Value Contrast Night=1.58 -Grading Value Contrast Day=1.74 -Grading Value Contrast Interior=1.62 +Grading Value Contrast Night=1.67 +Grading Value Contrast Day=1.48 +Grading Value Contrast Interior=1.58 Colorize After HSV=true Enable LUT Grading=true -LUT Blend Night=0.44 +LUT Blend Night=0.58 LUT Blend Day=0.77 LUT Blend Interior=0.45 Enable Post Dither=true diff --git a/enbseries/enbeffectpostpass.fx b/enbseries/enbeffectpostpass.fx index f99a602..fe69464 100644 --- a/enbseries/enbeffectpostpass.fx +++ b/enbseries/enbeffectpostpass.fx @@ -457,16 +457,12 @@ SamplerState Sampler Filter = MIN_MAG_MIP_LINEAR; AddressU = Clamp; AddressV = Clamp; - MaxLOD = 0; - MinLOD = 0; }; SamplerState SamplerB { Filter = MIN_MAG_MIP_LINEAR; AddressU = Border; AddressV = Border; - MaxLOD = 0; - MinLOD = 0; }; SamplerState SamplerFont {